【发布时间】:2023-03-31 15:09:01
【问题描述】:
我正在尝试用 php 代码做一个水印标记,一切似乎都很好,直到我将一个透明的 PNG 文件放入 GIF。这会发生什么:
所以不是透明的黑色水印,我在顶部得到了这个半纯绿色的东西。 水印是
我使用以下 php 代码:
...
$image = imagecreatefromgif($filepath);;
$watermark_image = imagecreatefrompng($wm_filepath);
imagealphablending($watermark_image, false);
imagesavealpha($watermark_image, true);
imagegif($image, $filepath);
imagedestroy($image);
imagecopy($image, $watermark_image, $offset['x'], $offset['y'], 0, 0, imagesx($watermark_image), imagesy($watermark_image) );
附言我不得不提到我尝试使用
组合不同的设置 imagealphablending()
imagesavealpha()
没有结果
UPD:
现在我将图像保存为 png 文件。我删除了这两行imagealphablending($watermark_image, false); imagesavealpha($watermark_image, true);,它起作用了。但是,PNG 的透明度与 GIF 重叠。 imagealphablending($image, true); 没有帮助。我该怎么办?
【问题讨论】: