キャンバスの色を設定する方法: 1. "imagecolorallocate(image,red,green,blue)" ステートメントを使用します; 2. "imagecolorallocatealpha(image,red,green,blue,alpha)" ステートメントを使用します。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
方法 1: imagecolorallocate( ) function
imagecolorallocate() 関数は、画像リソースに色を割り当てることができます。画像に複数の色を設定する必要がある場合は、この関数を複数回呼び出すだけです。関数の構文形式は次のとおりです。
imagecolorallocate(resource $image, int $red, int $green, int $blue):
このうち、$image は色を設定する画像リソースであり、imagecolorallocate() 関数は、指定された色で構成される色を表す識別子を返します。 RGB コンポーネント; $ red、$green、$blue はそれぞれ必要な色の赤、緑、青のコンポーネントで、値の範囲は 0 ~ 255 の整数または 16 進数の 0x00 ~ 0xFF です。
ヒント: imagecreate() 関数を使用して画像リソースが作成された場合、imagecolorallocate() 関数が初めて呼び出されたときに、デフォルトで背景色で塗りつぶされます。
[例] imagecolorallocate()関数を使用して画像の色を設定します。
<?php $image = imagecreate(100, 100); $blue = imagecolorallocate($image, 0, 0, 255); $red = imagecolorallocate($image, 255, 0, 0); $green = imagecolorallocate($image, 0, 255, 0); header('Content-type:image/jpeg'); imagejpeg($image); imagedestroy($image); ?>
実行結果は以下のとおりです。
方法 2: imagecolorallocatealpha() 関数を使用します
#imagecolorallocatealpha () この関数は imagecolorallocate() と同じ機能を持ちますが、透明度を設定するための追加パラメータ alpha があり、関数の構文形式は次のとおりです:imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha)このうち $image は色を設定する画像リソース。 $red 、 $green 、 $blue は、それぞれ必要な色の赤、緑、青のコンポーネントです。値の範囲は、0 ~ 255 の整数または 16 進数の 0x00 ~ 0xFF です。$alpha は、色の透明度を設定するために使用されます。値の範囲は 0 ~ 127 で、0 は完全な不透明度を示し、127 は完全な透明度を示します。 [例] imagecolorallocatealpha()関数を使用して、画像の色を設定します。
<?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; //用alpha值分配一些颜色 $yellow=imagecolorallocatealpha($image,255,255,0,75); $red=imagecolorallocatealpha($image,255,0,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! header('Content-type:image/png'); //最后输出结果 imagepng($image); imagedestroy($image); ?>実行結果は以下のとおりです。 推奨学習: 「
PHP ビデオ チュートリアル 」
以上がPHPでキャンバスの色を設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。