Tengo una función que me inserta una marca de agua en una imagen, pero solo funciona con jpg´s:
Código:
He probado cambiando el imagecreatefromjpeg por imagecreatefromgif y el imagejpeg por imagegif, pero nada. me crea una imagen totalmente blanca.function watermark($srcfilename, $newname, $watermark, $quality) {
$imageInfo = getimagesize($srcfilename);
$width = $imageInfo[0];
$height = $imageInfo[1];
$logoinfo = getimagesize($watermark);
$logowidth = $logoinfo[0];
$logoheight = $logoinfo[1];
$horizextra =$width - $logowidth;
$vertextra =$height - $logoheight;
$horizmargin = round($horizextra / 2);
$vertmargin = round($vertextra / 2);
$photoImage = imagecreatefromjpeg($srcfilename);
ImageAlphaBlending($photoImage, true);
$logoImage = imagecreatefrompng($watermark);
$logoW = ImageSX($logoImage);
$logoH = ImageSY($logoImage);
ImageCopy($photoImage, $logoImage, $horizmargin, $vertmargin, 0, 0, $logoW, $logoH);
//ImageJPEG($photoImage); // output to browser
imagejpeg($photoImage,"fotos/".$newname, $quality);
ImageDestroy($photoImage);
ImageDestroy($logoImage);
}
Alguna idea??
Muxas gracias!!

