我希望使用PHP从给定的十六进制值获得更明亮的十六进制色调输出。例如,我将颜色#cc6699
作为输入,我希望#ee88aa
作为输出颜色。我将如何在PHP中执行此操作?
答案 0 :(得分:7)
您需要将颜色转换为RGB,进行添加并转换回来:
// Convert string to 3 decimal values (0-255)
$rgb = array_map('hexdec', str_split("cc6699", 2));
// Modify color
$rgb[0] += 34;
$rgb[1] += 34;
$rgb[2] += 17;
// Convert back
$result = implode('', array_map('dechex', $rgb));
echo $result;
答案 1 :(得分:1)
1。将颜色分为三个元素:cc,66,99 2.使用http://php.net/manual/de/function.hexdec.php将其转换为十进制 3.增加三个十进制值 4.再次将小数转换为十六进制 5.把三个元素放在一起
答案 2 :(得分:0)
与您的问题没有直接关系,但本文对于颜色转换非常有用:http://beesbuzz.biz/code/hsv_color_transforms.php
答案 3 :(得分:0)