Question

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?

Was it helpful?

Solution

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.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top