Algorithm 给定颜色和alpha,什么颜色&;要添加alpha以创建所需的颜色?
如果我有一个底层颜色和一个alpha值(C&a),并且想在屏幕上创建一个自定义的C&a,那么有什么功能来确定哪些C&a必须添加为底层顶部的一个层 编辑: 我想复制photoshop的“正常”模式,以便匹配设计师的平面设计 例如:Algorithm 给定颜色和alpha,什么颜色&;要添加alpha以创建所需的颜色?,algorithm,colors,Algorithm,Colors,如果我有一个底层颜色和一个alpha值(C&a),并且想在屏幕上创建一个自定义的C&a,那么有什么功能来确定哪些C&a必须添加为底层顶部的一个层 编辑: 我想复制photoshop的“正常”模式,以便匹配设计师的平面设计 例如: BASE LAYER rgb: 255-0-0 alpha: 51/256 + NEW LAYER rgb: ??? alpha: ??? = DESIRED LAYER rgb: 114-0-141 alpha: 92/256 注:答案是0-0-255阿尔
BASE LAYER rgb: 255-0-0 alpha: 51/256
+
NEW LAYER rgb: ??? alpha: ???
=
DESIRED LAYER rgb: 114-0-141 alpha: 92/256
注:答案是0-0-255阿尔法:51/256。。。但我之所以知道这一点,是因为我写了这个问题,并在photoshop中验证了它。这取决于两层(底部和顶部)之间使用的颜色。wiki页面列出了您可能感兴趣的一些公式
PDF参考手册也有很好的解释:
αrCr=[(1-
αs)*αb*
Cb]+[(1-αb)*
αs*Cs]+
αb*αs*
B(Cb、Cs)
在哪里
下标呢
r=结果,b=背景,s=源
而且
B(Cb,Cs)=混合模式功能
在正常混合模式下:B(Cb,Cs)=Cs
混合alpha由下式给出:
αr=Union(αb,αs)和
并集(b,s)=b+s-(b*s)
我认为photoshop的“正常”模式实现了波特·达夫的“过度”合成。然后,该页面很有用,并列出了公式,特别是用于处理alpha的公式
请注意,并非所有解决方案都是可能的。即,所需层的α必须大于基层的α
解决方案可以是这样的:
- 确定新层的alpha为
。请注意,(alpha_所需-alpha_碱)/(1-alpha_碱)
必须为正(需要α-α基)
- 确定新图层的颜色,这可能超出可用范围--则操作不可能
C = color, α = alpha value