生成两种颜色组合的公式是什么?

What is the formula to generate two colour shade combos?

附上示例图片。 您可以在其中看到使用两种颜色和介于两者之间的范围的生动图案。 我早些时候想过使用两种颜色之间的差异,并将该范围内的随机值添加到较小的(十六进制)颜色。但它给了我一个非常不愉快的调色板。 首先是我需要的,其次是我得到的。

当您生成颜色时,您应该记住它们是由 (R)ed (G)reen (B)lue 和有时 Alpha-transparency 构建的。

想一想:如果您在 #000000#ffffff 之间选择一个随机数,您可能会得到类似这样的结果:#840523。请注意,它并不像您期望的那样是灰色的。

如果你想要它“随机”,你应该为每个通道选择随机值。

因此,在您的示例中,请执行以下操作:

Color1: #297EA6 split: #29 #7E #A6
Color2: #00101C split: #00 #10 #1C

Red  : get a random value between #29 and #00 --> #20?
Green: get a random value between #7E and #10 --> #61?
Blue : get a random value between #A6 and #1C --> #8D?

New Color: #20 + #61 +#8D --> #20618D

如果你想保持相同的语气,那么你应该考虑计算 Hue/Saturation/Luminance 值,并使用这些值。您可能会得到更令人满意的结果。

在这个答案中,我已经解释了如何做你想做的事情,但一定要阅读这个,因为它更深入地介绍了插值颜色:Interpolate from one color to another