Как преобразовать значение цвета HEX в эквивалент CMYK в php?
Я хочу написать функцию, которая это делает. Но я не понял, как конвертировать hex в CMYK
eg: <?php hex2CMYK('#000000'); //result: array('0.0','0.0','0.0','0.0'); ?>
function hex2rgb($hex) { $color = str_replace('#','',$hex); $rgb = array( 'r' => hexdec(substr($color,0,2)), 'g' => hexdec(substr($color,2,2)), 'b' => hexdec(substr($color,4,2)), ); return $rgb; } function rgb2cmyk($var1,$g=0,$b=0) { if (is_array($var1)) { $r = $var1['r']; $g = $var1['g']; $b = $var1['b']; } else { $r = $var1; } $cyan = 255 - $r; $magenta = 255 - $g; $yellow = 255 - $b; $black = min($cyan, $magenta, $yellow); $cyan = @(($cyan - $black) / (255 - $black)); $magenta = @(($magenta - $black) / (255 - $black)); $yellow = @(($yellow - $black) / (255 - $black)); return array( 'c' => $cyan, 'm' => $magenta, 'y' => $yellow, 'k' => $black, ); } $color=rgb2cmyk(hex2rgb('#FF0000'));