PHPのimageellipse()関数で楕円を描画する方法を徹底解説
imageellipse()は、PHPに標準で組み込まれているGDライブラリの関数の一つで、画像上に楕円を描画するために使用されます。処理が成功した場合はtrueを返し、失敗した場合はfalseを返します。
構文
bool imageellipse($image, $cx, $cy, $width, $height, $color)
パラメータ
imageellipse()は、以下の6つのパラメータを受け取ります:$image、$cx、$cy、$width、$height、$color。
$image − 描画対象となる画像リソースを指定します。imagecreatetruecolor()などの画像作成関数が返す値を使用します。
$cx − 楕円の中心のX座標を設定します。
$cy − 楕円の中心のY座標を設定します。
$width − 楕円の幅をピクセル単位で設定します。
$height − 楕円の高さをピクセル単位で設定します。
$color − 楕円の線の色を指定します。imagecolorallocate()関数で作成したカラー識別子を使用します。
戻り値
楕円の描画に成功した場合はtrueを、失敗した場合はfalseを返します。
例1:黒い背景に白い楕円を描画する
<?php
// 空の画像(キャンバス)を作成します。
$image = imagecreatetruecolor(700, 350);
// 背景色を黒に設定します。
$bg = imagecolorallocate($image, 0, 0, 0);
// 選択した色で背景を塗りつぶします。
imagefill($image, 0, 0, $bg);
// 楕円の色として白色を選択します。
$col_ellipse = imagecolorallocate($image, 255, 255, 255);
// 楕円を描画します。
imageellipse($image, 325, 175, 500, 175, $col_ellipse);
// 画像を出力します。
header("Content-type: image/png");
imagepng($image);
?>
出力結果

例2:グレーの背景にシアンの縦長楕円を描画する
<?php
// 空の画像(キャンバス)を作成します。
$image = imagecreatetruecolor(700, 600);
// 画像の背景色をグレーに設定します。
$bg = imagecolorallocate($image, 122, 122, 122);
// 選択した色で背景を塗りつぶします。
imagefill($image, 0, 0, $bg);
// 楕円の色としてシアンを設定します。
$col_ellipse = imagecolorallocate($image, 0, 255, 255);
// 楕円を描画します。
imageellipse($image, 250, 300, 300, 550, $col_ellipse);
// 画像を出力します。
header("Content-type: image/png");
imagepng($image);
?>
出力結果

まとめとポイント
imageellipse()関数は、中心座標($cx、$cy)と幅・高さ($width、$height)を指定するだけで簡単に楕円を描画できる便利な関数です。塗りつぶしではなく輪郭のみを描画する点に注意してください。塗りつぶしたい場合は、代わりにimagefilledellipse()関数を使用します。
また、この関数を使用するにはサーバーにGDライブラリがインストールされている必要があります。多くのレンタルサーバーや標準的なPHP環境ではデフォルトで有効になっていますが、phpinfo()などで事前に確認しておくと安心です。
-
PHPのimagedashedline()関数とは?破線を描画する方法を徹底解説
PHPのimagedashedline()関数とはimagedashedline() 関数は、画像上に破線(ダッシュライン)を描画するための関数です。指定した開始点の座標から終了点の座標へ向かって、指定した色の破線を引きます。構文imagedashedline( $image , $x1 , $y1 , $x2 , $y2 , $color )パラメータimageimagecreatetruecolor() などで作成した画像リソースを指定します。x1線の始点となるx座標。y1線の始点となるy座標。x2線の終点となるx座標。y2線の終点となるy座標。color破線に使用する色。imagecol
-
JavaとOpenCVで楕円を描画する方法|Imgproc.ellipse()の使い方を解説
Java版OpenCVライブラリの org.opencv.imgproc パッケージには、Imgproc クラスが含まれています。画像に楕円を描画するには、このクラスが提供する ellipse() メソッドを呼び出します。 ellipse()メソッドのパラメータ ellipse() メソッドは、以下の引数を受け取ります。 Matオブジェクト:楕円を描画する対象となる画像を表します。 RotatedRectオブジェクト:回転可能な矩形を表します。楕円はこの矩形に内接する形で描画されます。 Scalarオブジェクト:描画する色をBGR形式で指定します。 int型の値:線の太さを指定します(デフォ