imagecolorexact

(PHP 4, PHP 5, PHP 7, PHP 8)

imagecolorexact指定した色のインデックスを取得する

説明

imagecolorexact(
    GdImage$image,
    int$red,
    int$green,
    int$blue
): int

画像パレット中の特定の色のインデックスを返します。

画像をファイルから作成した場合は、画像内で使われている色だけを解決します。パレットにだけ存在する色は解決されません。

パラメータ

image

imagecreatetruecolor()のような画像作成関数が返す GdImage オブジェクト。

red

赤コンポーネントの値。

green

緑コンポーネントの値。

blue

青コンポーネントの値。

戻り値

指定した色の、パレット内でのインデックスを返します。 画像パレット中に色が存在しない場合は -1 を返します。

変更履歴

バージョン説明
8.0.0image は、 GdImage クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な gdresource が期待されていました。

例1 GD ロゴからの色の取得

<?php
// 画像を用意します
$im = imagecreatefrompng('./gdlogo.png');

$colors = Array();
$colors[] = imagecolorexact($im, 255, 0, 0);
$colors[] = imagecolorexact($im, 0, 0, 0);
$colors[] = imagecolorexact($im, 255, 255, 255);
$colors[] = imagecolorexact($im, 100, 255, 52);

print_r($colors);

// メモリから解放します
imagedestroy($im);
?>

上の例の出力は、 たとえば以下のようになります。

Array ( [0] => 16711680 [1] => 0 [2] => 16777215 [3] => 6618932 )

参考

To Top