現在の位置: ホーム> 最新記事一覧> ImageOpenPolygon()を使用するときに色を設定する方法

ImageOpenPolygon()を使用するときに色を設定する方法

M66 2025-05-29

PHPでは、 ImageOpenPolygon()関数を使用して、画像にポリゴンを描画します。この関数の構文は次のとおりです。

 bool imageopenpolygon(resource $image, array $points, int $num_points, int $color)

パラメーター分析:

  1. $ image :通常、 ImageCreate()ImageCreatefromJpeg()などの関数によって作成されたターゲット画像リソース。

  2. $ポイント:ポリゴンの各ポイントの座標を含む配列。各座標は、2つの整数値(xとy)で構成されています。

  3. $ num_points :ポリゴンの頂点の数。

  4. $ COLOR :通常、 ImageColorAllocate()またはImageColorallocatealpha()関数によって作成されるポリゴンを描くために使用される色。

色パラメーターを設定する方法は?

ImageOpenPolygon()関数では、 $色のパラメーターがポリゴンの充填色を決定します。色を設定する場合は、最初にimageColorAllocate()関数を使用して色値を割り当てる必要があります。この関数の形式は次のとおりです。

 int imagecolorallocate(resource $image, int $red, int $green, int $blue)

$イメージはターゲット画像リソース、 $ red$緑$青はそれぞれ0〜255の範囲のRGB値です。この関数を通じて、異なる色を設定できます。

サンプルコード:

 <?php
// aを作成します 400x400 画像
$image = imagecreate(400, 400);

// 色を割り当てます
$bg_color = imagecolorallocate($image, 255, 255, 255); // 白い背景
$polygon_color = imagecolorallocate($image, 0, 0, 255); // 青いポリゴン

// ポリゴンの頂ポイントを設定します
$points = array(
    100, 100,  // ポイント 1 (x1, y1)
    300, 100,  // ポイント 2 (x2, y2)
    350, 250,  // ポイント 3 (x3, y3)
    250, 350,  // ポイント 4 (x4, y4)
    150, 250   // ポイント 5 (x5, y5)
);

// 画像にポリゴンを描きます
imageopenpolygon($image, $points, count($points) / 2, $polygon_color);

// 出力画像
header('Content-Type: image/png');
imagepng($image);

// 画像リソースを破壊します
imagedestroy($image);
?>

コード解析:

  1. 画像リソースの作成ImageCreate()を介して400x400ピクセルの画像を作成します。

  2. 色の割り当てImageColorAllocate()を使用して、それぞれ背景とポリゴンに色を割り当てます。背景は白(RGB:255、255、255)で、ポリゴンは青です(RGB:0、0、255)。

  3. 描画ポリゴンImageOpenPolygon()関数を介して、設定された頂点配列$ポイントとColor $ polygon_colorを使用してポリゴンが描画されます。

注:

  • ImageOpenPolygon()関数は画像リソースを自動的に閉じていないため、画像を破壊してメモリを解放するためにImagedestroy()関数を使用する必要があります。

  • 透明度効果を使用するには、 ImageColorallocatealpha()を使用して、透明性のある色を作成できます。

上記の方法を使用すると、画像に異なる色のポリゴンを簡単に描画できます。