array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'en', ), 'this' => array ( 0 => 'function.imagecolorat.php', 1 => 'imagecolorat', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'GD and Image Functions', ), 'prev' => array ( 0 => 'function.imagecolorallocatealpha.php', 1 => 'imagecolorallocatealpha', ), 'next' => array ( 0 => 'function.imagecolorclosest.php', 1 => 'imagecolorclosest', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/image/functions/imagecolorat.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
imagecolorat — Get the index of the color of a pixel
Returns the index of the color of the pixel at the
specified location in the image specified by image
.
If the image is a truecolor image, this function returns the RGB value of that pixel as integer. Use bitshifting and masking to access the distinct red, green and blue component values:
image
A GdImage object, returned by one of the image creation functions, such as imagecreatetruecolor().
x
x-coordinate of the point.
y
y-coordinate of the point.
Returns the index of the color or false
on failure.
This function may
return Boolean false
, but may also return a non-Boolean value which
evaluates to false
. Please read the section on Booleans for more
information. Use the ===
operator for testing the return value of this
function.
Version | Description |
---|---|
8.0.0 |
image expects a GdImage
instance now; previously, a valid gd resource was expected.
|
Example #1 Access distinct RGB values
<?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);
?>
The above example will output something similar to:
int(119) int(123) int(180)
Example #2 Human-readable RGB values using imagecolorsforindex()
<?php
$im = imagecreatefrompng("php.png");
$rgb = imagecolorat($im, 10, 15);
$colors = imagecolorsforindex($im, $rgb);
var_dump($colors);
?>
The above example will output something similar to:
array(4) { ["red"]=> int(119) ["green"]=> int(123) ["blue"]=> int(180) ["alpha"]=> int(127) }