
2.3.4 HSL
HSL指的是:Hue(色相)、Saturation(饱和度或纯度)、Lightness(亮度)。HSL中的L分量为亮度,亮度为100表示白色,亮度为0表示黑色;HSV中的V分量为明度,明度为100表示光谱色,明度为0表示黑色。
HSL的H(Hue)分量指的是人眼所能感知的色彩范围,这些色彩分布在一个平面的色相环上,取值范围是0°~360°的圆心角,每个角度可以代表一种色彩。色相值的意义在于,我们可以在不改变光感的情况下,通过旋转色相环来改变色彩。在实际应用中,我们需要记住色相环上的六大主色,用作基本参照:360°/0°红色、60°黄色、120°绿色、180°青色、240°蓝色、300°品红色,它们在色相环上按照60°圆心角的间隔排列,如图2-17所示。

图2-17 色相环的六大主色
HSL的S(Saturation)分量指的是色彩的饱和度,它用0~100%的值描述了相同色相、明度下色彩饱和度(纯度)的变化。数值越大,色彩中的灰色越少,色彩越鲜艳,呈现一种从理性(灰度)到感性(纯色)的变化,饱和度(纯度)示意图如图2-18所示。
HSL的L(Lightness)分量指的是色彩的亮度,其作用是控制色彩的明暗变化,亮度为100表示白色,亮度为0表示黑色。它同样使用了0~100%的取值范围。数值越小,色彩越暗,越接近于黑色;数值越大,色彩越亮,越接近于白色,亮度示意图如图2-19所示。

图2-18 饱和度(纯度)示意图

图2-19 亮度示意图
HSV和HSL在色彩表达目的上类似,但在方法上有区别。二者在数学上都表现为圆柱形,如图2-20和图2-21所示。其中,Hue表示色相,Saturation表示饱和度(纯度),Lightness表示亮度,Value表示明度。

图2-20 HSL圆柱形示意图

图2-21 HSV圆柱形示意图
在HSL和HSV中,“色相”指相同的性质,它们对“饱和度”的定义是明显不同的。对于一些人,HSL更好地反映了“饱和度”和“亮度”作为两个独立参数的直觉观念;但是对于另一些人,HSL的饱和度定义是错误的,因为非常柔和的几乎白色的色彩在HSL可以被定义为完全饱和。