图像复制合并问题

Imagecopy merge Issue

$image_1 = imagecreatefrompng('GreenAppleMerge80.png');
$image_2 = $image_1;
imagealphablending($image_1, true);
imagesavealpha($image_1, true);
imagecopy($image_1, $image_2, 40, 0, 0, 0, 100, 100);
imagepng($image_1, 'final.png');

上面的代码写的是将两个GreenAppleMerge80.png合并成final.png

但是我对 final.png 不满意,希望右边的苹果完全可见,左边的苹果占 50%,其中右边的苹果占左边苹果的 50%。

求推荐。

首先你需要一个可以装下两个苹果的GD资源

$imgBig = imagecreate(120 , 80);

您将获得如图所示的 PNG。你不需要 image_2。是同一个资源。

$image_1 = imagecreatefrompng('GreenAppleMerge80.png');
imagealphablending($image_1, true);
imagesavealpha($image_1, true);

然后你把右半边的苹果复制到大图里

imagecopy($imgBig, $image_1, 80, 0, 40, 0, 40, 80);

然后创建第二张图片并将其复制到“imgBig”中。

imagecopy($image_1, $image_1, 40, 0, 0, 0, 80, 80);

imagecopy($imgBig, $image_1, 0, 0, 0, 0, 80, 80);

imagepng($imgBig, 'final.png');

解决方案不是特别好。但是用你的苹果图片对我有用。