imagecolorallocatealpha — 画像に色と透明度を割り当てます。
int imagecolorallocatealpha ( resource $image 、 int $red 、 int $green 、 int $blue 、 int $alpha )
imagecolorallocatealpha() は imagecolorallocate() と同じように動作しますが、追加の透明度パラメータ alpha があり、その値の範囲は 0 から 127 です。0 は完全に不透明を意味し、127 は完全に透明を意味します。
割り当てが失敗した場合は FALSE を返します。
注:この機能には GD 2.0.1 以降が必要です (2.0.28 以降を推奨)。
<?php$size = 300;$image=imagecreatetruecolor($size, $size);//白い背景と黒い境界線を持つボックスを描画します$back = imagecolorallocate($image, 255, 255, 255);$border = imagecolorallocate($image, 0, 0, 0);imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);$ yellow_x = 100;$ yellow_y = 75;$red_x = 120;$red_y = 165;$blue_x = 187;$blue_y = 125;$radius = 150;//アルファを使用値に色を割り当てます $ yellow = imagecolorallocatealpha($image, 255, 255, 0, 75); $blue = imagecolorallocatealpha($image, 0, 0, 255, 75);//重なった円を 3 つ描画します imagefilledellipse($image, $ yellow_x, $ yellow_y, $radius, $radius, $ yellow);imagefilledellipse($image, $red_x, $red_y, $radius, $radius, $red);imagefilledellipse($image, $blue_x, $blue_y, $radius , $radius, $blue);// 正しいヘッダーを出力することを忘れないでください。 header('Content-type: image/png');//最終的な出力結果 imagepng($image);imagedestroy($image);?>
上記の例の出力結果の図は次のとおりです。
imagecolorallocate() は画像に色を割り当てます。
imagecolordeallocate() 画像の色の割り当てを解除します。