|
官方文档是这样描述亮光模式的:
通过增加或减小对比度来加深或减淡颜色,具体取决于混合色。如果混合色(光源)比 50% 灰色亮,则通过减小对比度使图像变亮。如果混合色比 50% 灰色暗,则通过增加对比度使图像变暗。
计算公式:
混合色 <= 128:结果色 = 255 - (255 - 基色)/(2 * 混合色) * 255;
混合色 > 128:结果色 = 基色 / (2 *(255 - 混合色)) * 255。
将 255 当成 1,混合色用 a 表示,基色用 b 表示,结果色用 c 表示,那么公式简化为:
若 a <= 0.5, c = 1 + (b-1)/2a
若 a > 0.5, c = b / 2(1-a)
假设基色取值为: (0, 0.2, 0.4)和 (1, 0.8, 0.6)
假设混合色取值为:(0.4, 0.6, 0.8)
算得结果色的值分别为:(0, 0.25, 1)和 (1, 0.996, 1)。
通过公式可以验证:
当 a <= 0.5 时,c-b => 2a/2a + (b-1)/2a - 2ab/2a => [2a + (b-1) - 2ab] / 2a => [ (1-b) * (2a-1) ] / 2a,因为 2a-1 小于 0,整个结果为负数,因此知道图像变暗。
当 a > 0.5 时, c-b => b/2(1-a) -b => (b-2b+2ab)/2(1-a) => b(2a-1) / 2(1-a),因为 a 大于 0.5,因此整个式子结果大于0,所以知道图像变亮。 |
|