PHPのimagefilledellipse()関数とは?塗りつぶし楕円の描画方法を解説
PHPのimagefilledellipse()関数は、指定した座標を中心として塗りつぶしのある楕円を描画するために使用されるGDライブラリの関数です。図形描画や画像生成を行う際に非常に便利な関数の一つです。
構文
imagefilledellipse( $img, $cx, $cy, $width, $height, $color )
パラメータ
img:imagecreatetruecolor()関数などで作成した画像リソースを指定します。この画像に対して楕円が描画されます。
cx:楕円の中心のX座標(横方向の位置)を指定します。
cy:楕円の中心のY座標(縦方向の位置)を指定します。
width:楕円の横幅(幅)をピクセル単位で指定します。
height:楕円の高さをピクセル単位で指定します。
color:imagecolorallocate()関数で作成した塗りつぶしの色を指定します。
戻り値
imagefilledellipse()関数は、描画が成功した場合にTRUEを、失敗した場合にFALSEを返します。
使用例
以下は、imagefilledellipse()関数を使って塗りつぶし楕円を描画するサンプルコードです。
<?php
$img = imagecreatetruecolor(450, 290);
$bgColor = imagecolorallocate($img, 140, 180, 140);
imagefill($img, 0, 0, $bgColor);
$ellipse = imagecolorallocate($img, 120, 50, 70);
imagefilledellipse($img, 225, 150, 400, 250, $ellipse);
header("Content-type: image/png");
imagepng($img);
?>
コードの解説
このコードでは、まずimagecreatetruecolor()で450×290ピクセルのキャンバスを作成し、imagecolorallocate()で背景色(薄い緑)を設定してimagefill()で塗りつぶしています。その後、暗い赤色を作成し、imagefilledellipse()を使ってキャンバスの中心(225, 150)に幅400ピクセル、高さ250ピクセルの楕円を描画しています。最後にimagepng()でPNG画像として出力します。
出力結果
上記のコードを実行すると、緑色の背景の上に暗い赤色の塗りつぶし楕円が描画された画像が出力されます。
-
PHPのimagefill()関数の使い方:画像を指定色で塗りつぶす方法
PHPのimagefill()関数とはimagefill()関数は、指定した座標を起点として画像を指定色で塗りつぶすための関数です。開始点から隣接する同色の領域へ順番に色を適用する「フラッドフィル(flood fill)」として動作するため、画像の背景一括着色や特定領域の塗りつぶしなどに活用できます。構文imagefill(img, x, y, color)パラメータimgimagecreatetruecolor()などで作成した画像リソースを指定します。x塗りつぶしを開始する点のx座標です。y塗りつぶしを開始する点のy座標です。color塗りつぶしに使用する色を指定します。通常はimagec
-
PHPのimagefilledrectangle()関数の使い方 – 塗りつぶし矩形を描画する方法
PHPのimagefilledrectangle()関数は、指定した座標をもとに、色で塗りつぶされた矩形(長方形)を画像上に描画するためのGDライブラリ関数です。図形の作成やグラフィック処理などでよく利用されます。構文imagefilledrectangle( $img, $x1, $y1, $x2, $y2, $color )パラメータimgimagecreatetruecolor() などで作成した画像リソースを指定します。x1矩形の1つ目の頂点(始点)のX座標を指定します。y1矩形の1つ目の頂点(始点)のY座標を指定します。x2矩形の2つ目の頂点(対角の終点)のX座標を指定します。y2矩