rec*_*gle 1 transparency alpha alphablending image-processing alpha-transparency
我有一个像素的RGB元组,我们称之为P.
(255,0,0)是P的颜色,alpha通道为1.0.
当alpha通道为0.8时,P的颜色变为(255,51,51).
如何获得影响P颜色的像素颜色?
让我们从头开始.具有alpha的像素只有在与其他东西混合时才有意义.如果你有一个带有alpha的上层U和一个完全不透明的下层L,那么这个等式是:
P = (alpha * U) + ((1.0 - alpha) * L)
Run Code Online (Sandbox Code Playgroud)
重新排列公式,您将获得:
L = (P - (alpha * U)) / (1.0 - alpha)
Run Code Online (Sandbox Code Playgroud)
显然,当alpha为1.0时,等式没有意义,因为你要除以零.
插入数字显示像素L的R = 255,G = 255和B = 255.
几乎普遍的是,按照惯例,图像中的最低层将全部为白色(255,255,255).