谷歌调色板是单色的。保持相同的RGB比率可向上或向下移动亮度和饱和度。为此,您必须将RGB值转换为HSL表示形式(色相,饱和度,亮度),更改亮度和饱和度,然后根据需要转换回去。可以在计算时将其保留在RGB空间中,但是数学太混乱了(我无法理解或解释)。HSL是为传统混色创建的(它让我们更容易考虑)。
如果您的目标是制作CSS调色板,则可以使用将该颜色保留在HSL中background-color: hsl(0,100%, 50%);
。
您可以使用颜色选择器在Photoshop中手动执行此操作。HSB用于色相饱和度亮度(与HSL同义)。选择您喜欢的色调,并以一致的值更改“饱和度”和“亮度”。在下面的图像S = 54和B = 77中,使用54 + 54 * 0.05
和向上移动5%77 + 77 * 0.05
。或下移S - S * 0.05
旁注,以说明十六进制和RGB。6位十六进制#FFEB3B实际上是3个独立的数字,表示RGB。
#FFEB3B -> FF,EB,3B -> red:FF green:EB blue:3B
将十六进制值转换为十进制给您red:255 green:235 blue:59 OR rgb(255,235,59)
。
如果您确实希望在Wikipedia上将RGB转换为HSL的算法,则最简单的方法是使用颜色库。这个示例使用please.js制作了一个单色调色板,它还具有其他算法来创建互补或令人愉悦的调色板。很像kuler.adobe,也很摇滚。
Please.make_scheme(
Please.HEX_to_HSV('#ffeb3b'),
{scheme_type: 'mono', format:'hex'}
);
// returns ->["#ffeb3b", "#ffe821", "#ffe508", "#e5d54c"]