(PECL imagick 2, PECL imagick 3)
ImagickPixel::setHSL — Установка нормализованного HSL цвета
Устанавливает цвет в объекте ImagickPixel, используя нормализованные значения оттенка, насыщенности и яркости.
hueНормализованное значение оттенка, в виде значения круговой радуги (между 0 и 1), где нулевым значением будет красный цвет.
saturationНормализованное значение насыщенности, где 1 означает полное насыщение.
luminosityНормализованное значение яркости, по шкале от 0 (чёрный) до 1 (белый), при установленном HS в значении 0.5.
Функция в случае успешной работы возвращает true.
Пример #1 Пример использования ImagickPixel::setHSL()
<?php
//Создание почти чистого красного цвета
$color = new ImagickPixel('rgb(90%, 10%, 10%)');
//Получение значений HSL
$colorInfo = $color->getHSL();
//Поворачиваем оттенок на 180 градусов
$newHue = $colorInfo['hue'] + 0.5;
if ($newHue > 1) {
$newHue = $newHue - 1;
}
//Устанавливаем ImagickPixel в новый цвет
$colorInfo = $color->setHSL($newHue, $colorInfo['saturation'], $colorInfo['luminosity']);
//Проверяем, что новый цвет является голубым/зелёным
$colorInfo = $color->getcolor();
print_r($colorInfo);
?>Результат выполнения приведённого примера:
Array
(
[r] => 26
[g] => 230
[b] => 230
[a] => 255
)
Замечание:
Доступно с версии 6.2.9 и выше библиотеки ImageMagick.