为什么#ffffff与#eeeeee之间的差别比#000000与#111
发布网友
发布时间:2024-10-04 04:50
我来回答
共1个回答
热心网友
时间:5小时前
我们探讨为什么 #ffffff 与 #eeeeee 之间的差别比 #000000 与 #111 的差别更显著。关键在于网页颜色标准色域 sRGB 的特性。
sRGB 色域中,#111111(即浮点色值)的亮度仅为白点(D65)的 0.26%,而 #EEEEEE(色值)的亮度是白点的 85.91%。这表示,#eeeeee 的颜色相对于 #ffffff 而言,差异更为明显。
计算色差实际上很简单,通过测量光谱并直接积分即可得出结果。
在 CIE XYZ 及线性色域中,我们使用三个色彩匹配函数,将色值定为匹配函数与光谱功率密度函数的内积。可以证明,在这种定义下,光线的和对应的色值等同于每束光线色值之和,这就是 Grassmann 定律。线性色域的「线性」指的是此特性。
然而,sRGB 的非线性在于,其数值是 CIE XYZ 经过线性变换后得到的一个线性 RGB 色域,再进行 1/2.2 次方运算。这意味着,sRGB 灰度色的实际亮度与色值的 2.2 次方相等,从而造成了非线性效果。