php GD复制png图片时的问题

朱__朱 发布于 2012/06/17 19:59
阅读 1K+
收藏 0

用过GD的伙计确认一下,这属于GD自身的功能不足,还是鄙人水平不足。

imagecopymerge($image, $water, 0, 0, 0, 0, imagesx($water), imagesy($water),50);

$water是水印图片,是有透明背景的。现在想复制的时候,改变图片的整体透明度。

上面的语句,可以把$water图片透明度变成50,复制合并到$image 。

这么没问题,复制jpg的时候大家都是这样改变水印透明度的。

可是对于有透明背景部分的png图片,图像部分处理正常,只是png原先透明的背景,不再透明了....

测试代码

<?php
$img=imagecreatefromjpeg('s.jpg');
$water=imagecreatefrompng('water.png');
imagecopymerge($img, $water, 0, 0, 0, 0, imagesx($water), imagesy($water),50);
header('Content-type:image/png');
imagepng($img);
?>

以下是问题补充:

@朱__朱:已证实,这是GD自身的不足之处....无解 (2012/10/08 02:10)
加载中
0
qycms_cn
qycms_cn
jpg没有透明的说法吧。
朱__朱
朱__朱
可是对于有透明背景部分的png图片,图像部分处理正常,只是png原先透明的背景,不再透明了...
0
Jason阿坚
Jason阿坚
貌似透明和动画要单独处理的, 看看别人的程序吧. 我没有整理过这方面
返回顶部
顶部