
13.06.2010, 05:27
|
|
Постоянный
Регистрация: 26.03.2008
Сообщений: 311
С нами:
9540826
Репутация:
479
|
|
Сообщение от Axel G
Здравствуйте всем, появился вопрос, как сделать наложение картинки на картинку (своеобразный ватермарк)??
Скрипт аплоада сам создает такое изображение

Если юзер выбирает чекбокс, то надо на превью наложить  чтобы в итоге получить

PHP код:
$image = imagecreatefrompng('http://ipicture.ru/uploads/100611/H51orxCq6S.png');//картинка
$watermark = imagecreatefrompng('http://ipicture.ru/uploads/100611/bSP3J7Q2Aj.png');//лупа
$ro=0;//отступ от правого края
$lo=0;//отступ сверху
$w = imagesx($image);//ширина картинки
$h = imagesy($image);//высота картинки
$ww = imagesx($watermark);//ширина лупы
$wh = imagesy($watermark);//высота лупы
imagecopy($image, $watermark, $w-$ww-$ro, $h-$wh-$lo, 0, 0, $ww, $wh);//копируем
#####вывод#########
header('Content-type: image/png');
imagepng($image);
#####/вывод#########
imagedestroy($image);
imagedestroy($watermark);
или через функцию , с поддержкой "multiextentions"
PHP код:
function watermark($src,$outtype,$wt,$x_offset=0,$y_offset=0){
switch (strtolower(substr(strrchr($src,'.'),1))) {
case 'gif':$image=imagecreatefromgif($src);break;
case 'jpg':$image=imagecreatefromjpeg($src);break;
case 'jpeg':$image=imagecreatefromjpeg($src);break;
case 'png':$image=imagecreatefrompng($src);break;
}
switch (strtolower(substr(strrchr($wt,'.'),1))) {
case 'gif':$watermark=imagecreatefromgif($wt);break;
case 'jpg':$watermark=imagecreatefromjpeg($wt);break;
case 'jpeg':$watermark=imagecreatefromjpeg($wt);break;
case 'png':$watermark=imagecreatefrompng($wt);break;
}
$ro=$x_offset;//отступ от правого края
$lo=$y_offset;//отступ сверху
$w=imagesx($image);//ширина картинки
$h=imagesy($image);//высота картинки
$ww=imagesx($watermark);//ширина лупы
$wh=imagesy($watermark);//высота лупы
imagecopy($image, $watermark, $w-$ww-$ro, $h-$wh-$lo, 0, 0, $ww, $wh);//копируем
header('Content-type: image/'.strtolower($outtype));
switch (strtolower($outtype)) {
case "jpg":imagejpeg($image,null,100);break;
case "jpeg":imagejpeg($image,null,100);break;
case "gif":imagegif($image);break;
case "png":imagepng($image);break;
}
imagedestroy($image);
imagedestroy($watermark);
}
watermark('http://ipicture.ru/uploads/100611/H51orxCq6S.png','png','http://ipicture.ru/uploads/100611/bSP3J7Q2Aj.png',0,0);
Последний раз редактировалось #Wolf#; 13.06.2010 в 09:42..
|
|
|