2010年2月1日月曜日

GD imagecreatetruecolorの背景色透過問題(解決)

GDでimagecreatetruecolor()を使うと、背景色が黒に設定されてしまいます。
他の色にするには、imagefillを使うといいのでしょうが、
透過させたい場合は困ります。

(自分は困りました。)

そんなわけで、imagecreatefrompng()をつかって、
予め作った透過PNGを
    $img = imagecreatefrompng("trans.png");
みたいに読み込ませてベースとし、
その上で色々な画像を生成させる、という方式でうまくいきました。
よかった。

以下はGDで生成した透過背景のPNG例です。


■追記
GDでPNGなどを生成すると、該当PHPファイルを指定すれば、それがそのままPNG画像としてブラウザは認識する、ということを知りました。
すごく面白いですね。使えます。
(Thanks to Kinoさん )

■追記2
なんか画像が変でした(^^;
png8で背景PNGを保存したらだめでした。PNG32で保存したらいけました。
ちょっとα値のことがよくわかっていません。要研究なり。

0 件のコメント:

コメントを投稿