Luminance to alpha effect
Az alfaeffektushoz a fényerővel állítsa az alfa csatornát a kép fényerejére, és állítsa a színcsatornát 0 értékre. Ennek az effektusnak a kimenetével a bemeneti kép fényereje alapján félig átfedő réteget készíthet. Vagy használhatja képmaszk készítésére is.
Jegyzet
Ennek az effektusnak nincsenek tulajdonságai.
Az effektus CLSID azonosítója CLSID_D2D1LuminanceToAlpha.
Példakép
Ez a példa a fehér felületen összetett fényerejű alfaeffektus kimenetét mutatja be az átlátszatlanság megjelenítéséhez.
Előtt |
---|
![]() |
Után |
![]() |
ComPtr<ID2D1Effect> luminanceToAlphaEffect;
m_d2dContext->CreateEffect(CLSID_D2D1LuminanceToAlpha, &luminanceToAlphaEffect);
luminanceToAlphaEffect->SetInput(0, bitmap);
// LuminanceToAlpha result is composited on top of a white surface to show opacity.
ComPtr<ID2D1Effect> floodEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Flood, &floodEffect);
floodEffect->SetValue(D2D1_FLOOD_PROP_COLOR, D2D1::Vector4F(1.0f, 1.0f, 1.0f, 1.0f));
ComPtr<ID2D1Effect> compositeEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Composite, &compositeEffect);
compositeEffect->SetInputEffect(0, floodEffect.Get());
compositeEffect->SetInputEffect(1, luminanceToAlphaEffect.Get());
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(compositeEffect.Get());
m_d2dContext->EndDraw();
Ez az effektus a kimenet alfa csatornáját a bemeneti kép fényerejére állítja ezzel a színmátrix használatával.
Ez az effektus előre meghatározott alfaképeket használ fel és kimenetel. A hatás nem fog működni az egyenes alfa képeken, kivéve, ha teljesen átlátszatlanok.
Jegyzet
Mivel a képek gamma-kompenzált formátumban vannak tárolva, a kép fényerejének kiszámítása előtt először inverz gammakorrekciót kell végrehajtania a kép valódi színértékeinek lekéréséhez. Mivel a képeket általában 2,2 gamma értéken tárolják, használhatja a Gamma átviteli effektust egy kitevővel (1/2,2), majd használhatja ennek az effektusnak a kimenetét.
Követelmények
Követelmény | Érték |
---|---|
Minimálisan támogatott ügyfél | Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások] |
Minimálisan támogatott kiszolgáló | Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások] |
Fejléc | d2d1effects.h |
Könyvtár | d2d1.lib, dxguid.lib |
Kimeneti bitkép
A kimenet mérete megegyezik a bemeneti kép méretével.
Kapcsolódó témakörök