Megosztás a következőn keresztül:


Összetett effektus

Az összetett effektus használatával 2 vagy több képet egyesíthet. Ez az effektus 13 különböző összetett móddal rendelkezik. T

Az összetett effektus 2 vagy több bemenetet fogad el. Ha 2 képet ad meg, a cél az első bemenet (0. index), a forrás pedig a második bemenet (1. index). Ha 2-nél több bemenetet ad meg, a rendszer a képeket az első bemenettel, a másodikkal és így tovább.

Ez az effektus a grafikus feldolgozási egység (GPU) keverési egységével implementálja az összes módot.

Az effektus CLSID azonosítója CLSID_D2D1Composite.

Példakép

Az alábbi képen két, azonos méretű, lekerekített téglalap látható, amelyek átfedésben vannak. A kék téglalap a forrás, a piros téglalap pedig a cél. A rendszerképek a Source Over móddal lettek összetettek.

egy példaképet, amely két, azonos méretű, lekerekített téglalapot jelenít meg, amelyek átfedésben vannak a forrás módban való használatával.

Íme egy másik példa az alapértelmezett mód használatával.

1. kép előtt
az első forrásképet az effektus előtt.
2. kép előtt
a második képet az effektus előtt.
Után
a képet az átalakítás után.
ComPtr<ID2D1Effect> compositeEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Composite, &compositeEffect);

compositeEffect->SetInput(0, bitmap);
compositeEffect->SetInput(1, bitmapTwo);

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(compositeEffect.Get());
m_d2dContext->EndDraw();

Effektus tulajdonságai

Név és index számbavételének megjelenítése Típus és alapértelmezett érték Leírás
Üzemmód
D2D1_COMPOSITE_PROP_MODE
D2D1_COMPOSITE_MODE
D2D1_COMPOSITE_MODE_SOURCE_OVER
Az effektushoz használt mód.

Módtípusok

Az alábbi táblázat ennek a hatásnak a módjait mutatja be. A táblázatban felsorolt egyenletek a következő elemeket használják:

  • O = Kimenet
  • S = Forrás
  • SA = Source Alpha
  • D = Cél
  • DA = Cél alfa
Felsorolás Egyenlet Kimeneti bitkép mérete
D2D1_COMPOSITE_MODE_SOURCE_OVER O = S + (1 SA) * D Forrás- és célbitképek egyesítője
D2D1_COMPOSITE_MODE_DESTINATION_OVER O = (1 DA) * S + D Forrás- és célbitképek egyesítője
D2D1_COMPOSITE_MODE_SOURCE_IN O = DA * S A forrás- és célbitképek metszete
D2D1_COMPOSITE_MODE_DESTINATION_IN O = SA * D A forrás- és célbitképek metszete
D2D1_COMPOSITE_MODE_SOURCE_OUT O = (1 – DA) * S A forrásbitkép régiója
D2D1_COMPOSITE_MODE_DESTINATION_OUT O = (1 – SA) * D A célbitkép régiója
D2D1_COMPOSITE_MODE_SOURCE_ATOP O = DA * S + (1 – SA) * D A célbitkép régiója
D2D1_COMPOSITE_MODE_DESTINATION_ATOP O = (1 – DA) * S + SA * D A forrásbitkép régiója
D2D1_COMPOSITE_MODE_XOR O = (1 – DA) * S + (1 – SA) * D Forrás- és célbitképek egyesítője
D2D1_COMPOSITE_MODE_PLUS O = S + D Forrás- és célbitképek egyesítője
D2D1_COMPOSITE_MODE_SOURCE_COPY O = S A forrásbitkép régiója
D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY O = S (csak ott, ahol a forrás létezik) Forrás- és célbitképek egyesítője. A cél nem íródik felül, ha a forrás nem létezik.
D2D1_COMPOSITE_MODE_MASK_INVERT O = (1 D) * S + (1 SA) * D Forrás- és célbitképek egyesítője. Az alfaértékek változatlanok.

Az alábbi ábra az 1,0 vagy 0,5 átlátszatlanságú képeket tartalmazó összes módra mutat példát.

egy példaképet az 1,0 vagy 0,5 értékű átlátszatlanságú módokról.

Mintakód

Erre az effektusra példaként töltse le a Direct2D összetett effektusmódok mintájá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

ID2D1Effect