GD を使用して画像の不透明度を変更しようとしています。見つかったほとんどすべてのソリューションは、白い透明な背景を作成して画像とマージする以下のコードに似ています。
しかし、これは画像を透明にするわけではなく、画像が明るくなるだけで、実際に透視することはできません。
私の質問は、画像の不透明度を変更して透視できるようにする方法です。または、このコードに何か問題がありますか?
//Create an image with a white transparent background color
$newImage = ImageCreateTruecolor(300, 300);
$bg = ImageColorAllocateAlpha($newImage, 255, 255, 255, 127);
ImageFill($newImage, 0, 0, $bg);
//Get the image
$source = imagecreatefrompng('my_image.png');
$opacity = 50;
//Merge the image with the background
ImageCopyMerge($newImage,
$source,
0, 0, 0, 0,
300,
300,
$opacity);
header('Content-Type: image/png');
imagepng($newImage);
imagedestroy($newImage);
ありがとうございました!