PHP gdlib を使用して、既存の画像で灰色 (rgb: 235,235,240) を透明にしようとしています。
これは私が使用するコードです:
<?php
header("Content-type:image/png");
$picture = imagecreatefrompng("test.png");
$grey = imagecolorallocate($picture, 235, 235, 240);
imagecolortransparent($picture, $grey);
imagepng($picture);
imagedestroy($picture, "newpicture.png");
?>
test.png に多くの異なる色が含まれている場合、このコードは機能しません。それ以外の場合、test.png に少量の色しかない場合、このコードは完全に機能します。なんで?