Как преобразовать ImagickPixel::getColorAsString в цветной шестнадцатеричный формат

Я работаю с расширением imagick из PHP и хочу получить код HEX из объекта ImagickPixel, если я использую getColorAsString, в результате получается цвет формата srgb.

echo $pixel->getColorAsString();
//return srgb(62.128633554589150378%,78.681620508125433844%,74.308384832532240694%)

Любая встроенная функция или пользовательская, для приведения этого формата к HEX Code?

1 ответ

Решение

Наконец я сделал свою собственную функцию:

Входные данные являются результатом получения метона getColorAsString из ImagickPixel. Я не могу сделать это напрямую, потому что вывод метода находится в сторонней библиотеке

function iMagickColorToHEX($string)
{
    $pixel = new ImagickPixel($string);
    $color = $pixel->getColor();

    return sprintf('#%s%s%s', 
        dechex($color['r']), 
        dechex($color['g']),
        dechex($color['b'])
    );
}
Другие вопросы по тегам