imagecolorat
(PHP 4, PHP 5, PHP 7)
imagecolorat — Получение индекса цвета пиксела
Описание
$image
, int $x
, int $y
) : int|false
Возвращает индекс цвета пиксела на заданных координатах на изображении
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) }
Смотрите также
- imagecolorset() - Установка набора цветов для заданного индекса палитры
- imagecolorsforindex() - Получение цветов, соответствующих индексу
- imagesetpixel() - Рисование точки