I have RGB color value and alpha value. How can I get new RGB value assuming that I have white backgound and alpha is applied?

有帮助吗?

解决方案

The formula to be applied to each of the color channels is the following:

cr = cf * af + cb * ab * (1 - af)

where cr is the resulting color of the pixel, cf is the foreground color, cb the background color, af foreground alpha and ab background alpha.

Note that often color values are stored already premultiplied by alpha in which case the formula simplifies to

cr = cf + cb * (1 - af)

See also alpha composing.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top