2012-07-12 20 views
8

मेरे पास आरजीबी रंग मान और अल्फा मान है। मैं नया आरजीबी मान कैसे प्राप्त कर सकता हूं यह मानते हुए कि मेरे पास सफेद बैकगाउंड है और अल्फा लागू है?रंग पारदर्शिता अनुकरण करें

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

जहां करोड़ पिक्सेल की जिसके परिणामस्वरूप रंग, सीएफ है अग्रभूमि रंग है, सीबी:

उत्तर

10

सूत्र रंग चैनलों में से प्रत्येक के लिए लागू किया जा करने के लिए पीछा कर रहा है पृष्ठभूमि रंग, af अग्रभूमि अल्फा और एबी पृष्ठभूमि अल्फा।

ध्यान दें कि अक्सर रंग मान संग्रहीत पहले से ही अल्फा द्वारा premultiplied कर रहे हैं जो मामले में सूत्र

cr = cf + cb * (1 - af) 

भी देखें alpha composing को सरल करता है।

+0

मान लें कि मेरे पास अल्फा 0.5 के साथ लाल रंग (एफएफ 0000) है, और पृष्ठभूमि सफेद है। परिणाम रंग प्राप्त करने का प्रयास कर रहा है: ff0000 * 0.5 + ffffff * 0.5 = ff7fff, लेकिन यह मेरी अपेक्षा नहीं है ... http://www.colorhexa.com/ff7fff मैं क्या गलत कर रहा हूं? –

+1

फॉर्मूला को प्रत्येक रंग में अलग-अलग (लाल, हरा, नीला) –

+0

@Aaron Digulla, धन्यवाद, मैं अवांछित हूं :) –

संबंधित मुद्दे