2
這裏有一個簡單的例子,我不能使它工作。用PHP imagecopy合併兩個PNG圖像不起作用
我用不同的座標點創建了2個2x2px的簡單圖像,我試着用imagecopy合併它。第二張圖片($ stamp)用透明背景正確創建。 因此,我期望在結果圖像(result.png)中看到兩個白點,但事實並非如此。
我嘗試了幾個函數的組合,但沒有結果。
我在這裏錯過了什麼?
<?php
// create source image
$src = imagecreatetruecolor(2, 2);
$white = imagecolorallocate($src, 255, 255, 255);
$black = imagecolorallocate($src, 0, 0, 0);
imagesetpixel($src, 0, 0, $white);
imagepng($src, 'src.png');
// create stamp image
$stamp = imagecreatetruecolor(2, 2);
imagecolortransparent($stamp, $black);
imagesetpixel($stamp, 1, 1, $white);
imagepng($stamp, 'stamp.png');
imagedestroy($src);
imagedestroy($stamp);
// merging images
$src = imagecreatefrompng('src.png');
$stamp = imagecreatefrompng('stamp.png');
imagealphablending($src, true);
imagesavealpha($src, true);
imagecopy($src, $stamp, 0, 0, 0, 0, 2, 2);
imagepng($src, 'result.png');
imagedestroy($src);