PHP-用PHP如何做到将CMYK颜色值和RGB颜色相互转换?

PHP-用PHP如何做到将CMYK颜色值和RGB颜色相互转换?

灵芸 发布于 2016-10-28 字数 101 浏览 1176 回复 1

比如:输入CMYK值能够转换成其对应的RGB颜色值,或者输入RGB颜色值能够转换成CMYK值,求对应的算法。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜柠檬 2016-11-21 1 楼

http://www.phpclasses.org/discuss/package/7654/
这个如何?

这个呢:http://stackoverflow.com/questions/3333585/php-hex-to-cmyk

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)) * 255;
$magenta = @(($magenta - $black) / (255 - $black)) * 255;
$yellow = @(($yellow - $black) / (255 - $black)) * 255;
return array('c' => $cyan / 255,
'm' => $magenta / 255,
'y' => $yellow / 255,
'k' => $black / 255);
}

$color=rgb2cmyk(hex2rgb('#FF0000'));