PHP函数将十六进制转换为HSL
以下代码可用于将十六进制值转换为HSL值-
function hex_To_Hsl($hex) {
$hex_val = array($hex_val[0].$hex_val[1], $hex_val[2].$hex_val[3], $hex_val[4].$hex_val[5]);
$rgb_val = array_map(function($part) {
return hexdec($part) / 255;
}, $hex_val);
$max_val = max($rgb_val);
$min_val = min($rgb_val);
$l = ($max_val + $min_val) / 2;
if ($max_val == $min_val) {
$h = $s = 0;
} else {
$diff = $max_val - $min_val;
$s = $l > 0.5 ? $diff / (2 - $max_val - $min_val) : $diff / ($max_val + $min_val);
switch($max_val) {
case $rgb_val[0]:
$h = ($rgb_val[1] - $rgb_val[2]) / $diff + ($rgb_val[1] < $rgb_val[2] ? 6 : 0);
break;
case $rgb_val[1]:
$h = ($rgb_val[2] - $rgb_val[0]) / $diff + 2;
break;
case $rgb_val[2]:
$h = ($rgb_val[0] - $rgb_val[1]) / $diff + 4;
break;
}
$h /= 6;
}
return array($h, $s, $l);
}热门推荐
3 祝福语简短的微信
10 幼儿祝福语大全简短贺卡
11 感谢教官文案祝福语简短
12 鼠年同事祝福语简短创意
13 元旦祝福语 简短独特群发
14 妈咪跟我生日祝福语简短
15 给儿子新婚祝福语简短
16 伴娘祝福语长文案简短
17 恭喜高考完祝福语简短
18 生日祝福语送老公简短