(PHP 4, PHP 5, PHP 7)
imagecolorat — Получение индекса цвета пиксела
$image
, int $x
, int $y
) : int
Возвращает индекс цвета пиксела на заданных координатах на изображении
image
.
Если передается truecolor-изображение, функция возвращает целочисленное RGB значение для пиксела. Для выделения отдельных компонентов красного, зеленого или синего каналов используйте битовый сдвиг и маскирование:
image
Ресурс изображения, возвращаемый одной из функций создания изображений, например, такой как imagecreatetruecolor().
x
x-координата пиксела.
y
y-координата пиксела.
Возвращает индекс цвета или FALSE
в случае возникновения ошибки.
Эта функция может возвращать как логическое значение FALSE
, так и значение не типа boolean, которое приводится к 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 Удобочитаемые RGB значения с использованием imagecolorsforindex()
<?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) }