2012-07-12 23 views
8

RGB renk değeri ve alfa değeri var. Beyaz arka plana sahip olduğumu ve alfa uyguladığımızı varsayarak yeni RGB değerini nasıl alabilirim?Renk saydamlığını simüle et

cr pikselin elde edilen renk, cf olan
cr = cf * af + cb * ab * (1 - af) 

ön plan rengi, cb:

cevap

10

formül renk kanallarının her biri uygulanacak aşağıdaki gibidir Arka plan rengi, af ön plan alpha ve ab arka plan alfa. çoğunlukla renk değerleri, alfa ile çarpılır depolanabilir

Not bu durumda formül aynı zamanda,

cr = cf + cb * (1 - af) 

bakınız alpha composing sadeleşir.

+0

Varsa, alfa 0.5 ile kırmızı renk (ff0000) var ve arka plan beyaz. Sonuç rengini almaya çalışıyorum: ff0000 * 0.5 + ffffff * 0.5 = ff7fff, ama beklediğim bu değil ... http://www.colorhexa.com/ff7fff Neyi yanlış yapıyorum? –

+1

Formülü tek tek her bir renge uygulayın (kırmızı, yeşil, mavi) –

+0

@Aaron Digulla, teşekkürler, ben dikkatsizim :) –