使用 PHP GD 合并两个图像
Posted
技术标签:
【中文标题】使用 PHP GD 合并两个图像【英文标题】:Combine two images using PHP GD 【发布时间】:2013-01-25 12:08:25 【问题描述】:我正在尝试创建一个图像,其中包含我的图像 A(上传的图像)和图像 B(我的水印图像)。我的问题是我没有得到正确的方法来从底部扩展图像的大小,这将使用图像 A 和 B 创建。
我的代码是 -
$img_width=imagesx($img);
$img_height=imagesy($img);
$watermark=imagecreatefrompng($watermark);
$watermark_width=imagesx($watermark);
$watermark_height=imagesy($watermark);
$image=imagecreatetruecolor($img_width, $img_height+35);
imagealphablending($image, false);
$dest_x=$img_width-$watermark_width;
$dest_y=$img_height-$watermark_height+20;
imagecopy($img, $watermark, $dest_x, $dest_y, 0, 0,$watermark_width, $watermark_height);
imagesavealpha($img, true);
imagejpeg($img, $config['pdir']."/t/l-".$thepp, 90);
我用这段代码得到的是 -
Results http://www.9gag.in/pdata/t/l-76.jpg
您可以看到水印图像没有完全与我要创建的图像合并。我想要目标图像中的扩展区域,水印将正确安装。
【问题讨论】:
【参考方案1】:当你写作时:
$dest_y=$img_height-$watermark_height+20;
我猜你真的想要:
$dest_y=$img_height-$watermark_height-20;
图像顶部的 Y = 0,因此越往底部走,您的身高就越高。
【讨论】:
以上是关于使用 PHP GD 合并两个图像的主要内容,如果未能解决你的问题,请参考以下文章