imagecolorat
ピクセルの色のインデックスを取得する
説明
intfalse imagecolorat(GdImage $image
, int $x
, int $y
)
画像が
True カラーイメージである場合、この関数はそのピクセルの RGB 値を整数で返します。
赤、緑、青のそれぞれの値にアクセスするにはビットシフトとマスキングを利用してください:
パラメータ
-
image
-
imagecreatetruecolorのような画像作成関数が返す GdImage オブジェクト。
-
x
-
点の x 座標。
-
y
-
点の y 座標。
戻り値
色のインデックスを返します。失敗した場合に false
を返します
警告この関数は論理値
false
を返す可能性がありますが、false
として評価される値を返す可能性もあります。
詳細については 論理値の
セクションを参照してください。この関数の返り値を調べるには
===演算子 を
使用してください。
例
例1 個々の RGB 値へのアクセス
<?php
$im = imagecreatefrompng("php.png");
$rgb = imagecolorat($im, 10, 15);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
var_dump($r, $g, $b);
?>
int(119)
int(123)
int(180)
例2 imagecolorsforindex による可読形式の RGB 値
<?php
$im = imagecreatefrompng("php.png");
$rgb = imagecolorat($im, 10, 15);
$colors = imagecolorsforindex($im, $rgb);
var_dump($colors);
?>
array(4) {
["red"]=>
int(119)
["green"]=>
int(123)
["blue"]=>
int(180)
["alpha"]=>
int(127)
}
参考
- imagecolorset
- imagecolorsforindex
- imagesetpixel