(PHP 4, PHP 5, PHP 7)
imagecolorat — Obtener el índice del color de un píxel
$image
, int $x
, int $y
) : int
Devuelve el índice del color de un píxel en el
lugar especificado en la imagen especificada por image.
Si PHP se compila con la librería GD 2.0 o superior y la imagen es una imagen de color verdadero, esta función devuelve los valores RGB de ese pixel como entero. Use desplazamiento de bits y máscara de bits para acceder a los distintos valores de de los componentes rojo, verde y azul:
imageUn recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().
xCoordenada x del punto.
yCoordenada y del punto.
Devuelve el índice del color.
Ejemplo #1 Acceder a los distintos valores 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);
?>
El resultado del ejemplo sería algo similar a:
int(119) int(123) int(180)
Ejemplo #2 Valores RGB legibles para humanos usando imagecolorsforindex()
<?php
$im = imagecreatefrompng("php.png");
$rgb = imagecolorat($im, 10, 15);
$colores = imagecolorsforindex($im, $rgb);
var_dump($colores);
?>
El resultado del ejemplo sería algo similar a:
array(4) {
["red"]=>
int(119)
["green"]=>
int(123)
["blue"]=>
int(180)
["alpha"]=>
int(127)
}