我正在使用 imagecopymerge 创建图像,但覆盖在顶部的图像是 PNG,但透明部分是纯白色的。如何启用透明度?
$image = imagecreatefromjpeg($this->getFile());
$size = getimagesize($this->getFile());
$watermark = imagecreatefrompng('../watermark.png');
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$dest_x = $size[0] - $watermark_width - 10;
$dest_y = $size[1] - $watermark_height - 5;
//die($watermark_width);
$thumb_image = imagecreatetruecolor($this->getThumbWidth(), $this->getThumbHeight());
imagealphablending($thumb_image,true);
imagealphablending($image,true);
imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);
imagecopyresampled( $thumb_image, $image, 0, 0, 0, 0, $this->getThumbResizeWidth(), $this->getThumbResizeHeight(), $this->getWidth(), $this->getHeight() );
imagejpeg( $thumb_image, $this->getThumbDestination(), $this->getThumbQuality() );
imagedestroy($thumb_image);
imagedestroy($image);