1

画像の場合は背景色を変更するために imagefill() を使用していますが、その間、影響を受けない他の領域の色を黒に変更します。

$image = imagecreatefrompng("sample.png");
$background = imagecolorallocate($image, 255, 0,0);
imagefill($image, 0,0, $background);
header("content-type: image/png");
imagepng($image,"sample.png");

これは私のコードです。これがどのように起こっているか教えてもらえますか?

4

2 に答える 2

1

ブレンドモードを設定してアルファを保存してみてください

imagealphablending($image, false);
imagesavealpha($image, true);

http://www.php.net/manual/en/function.imagealphablending.php
http://www.php.net/manual/en/function.imagesavealpha.php

于 2012-11-19T17:06:43.227 に答える