Samengesteld effect
Gebruik het samengestelde effect om 2 of meer afbeeldingen te combineren. Dit effect heeft 13 verschillende samengestelde modi. T
Het samengestelde effect accepteert 2 of meer invoerwaarden. Wanneer u 2 afbeeldingen opgeeft, is het doel de eerste invoer (index 0) en is de bron de tweede invoer (index 1). Als u meer dan 2 invoer opgeeft, worden de afbeeldingen samengesteld vanaf de eerste invoer en de tweede enzovoort.
Met dit effect worden alle modi geïmplementeerd met behulp van de blending-eenheid van de GPU (Graphics Processing Unit).
De CLSID voor dit effect is CLSID_D2D1Composite.
- voorbeeldafbeelding
- eigenschappen van effect
- modustypen
- voorbeeldcode
- vereisten
- Verwante onderwerpen
Voorbeeldafbeelding
In de afbeelding ziet u 2 afgeronde rechthoeken van dezelfde grootte die overlappen. De blauwe rechthoek is de bron en de rode rechthoek is het doel. De afbeeldingen zijn samengesteld met de modus Source Over.
Hier volgt nog een voorbeeld met behulp van de standaardmodus.
Voor afbeelding 1 |
---|
![]() |
Voor afbeelding 2 |
![]() |
Na |
![]() |
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();
Effecteigenschappen
Weergavenaam en indexenumeratie | Type en standaardwaarde | Beschrijving |
---|---|---|
Wijze D2D1_COMPOSITE_PROP_MODE |
D2D1_COMPOSITE_MODE D2D1_COMPOSITE_MODE_SOURCE_OVER |
De modus die wordt gebruikt voor het effect. |
Modustypen
In de tabel ziet u de modi van dit effect. Voor de vergelijkingen in de tabel worden deze elementen gebruikt:
- O = Uitvoer
- S = bron
- SA = bron alfa
- D = Bestemming
- DA = Doel alpha
Opsomming | Vergelijking | Grootte van uitvoer bitmap |
---|---|---|
D2D1_COMPOSITE_MODE_SOURCE_OVER | O = S + (1 SA) * D | Samenvoeging van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_DESTINATION_OVER | O = (1 DA) * S + D | Samenvoeging van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_SOURCE_IN | O = DA * S | Snijpunt van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_DESTINATION_IN | O = SA * D | Snijpunt van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_SOURCE_OUT | O = (1 - DA) * S | Regio van de bron bitmap |
D2D1_COMPOSITE_MODE_DESTINATION_OUT | O = (1 - SA) * D | Regio van de doel bitmap |
D2D1_COMPOSITE_MODE_SOURCE_ATOP | O = DA * S + (1 - SA) * D | Regio van de doel bitmap |
D2D1_COMPOSITE_MODE_DESTINATION_ATOP | O = (1 - DA) * S + SA * D | Regio van de bron bitmap |
D2D1_COMPOSITE_MODE_XOR | O = (1 - DA) * S + (1 - SA) * D | Samenvoeging van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_PLUS | O = S + D | Samenvoeging van bron- en doel bitmaps |
D2D1_COMPOSITE_MODE_SOURCE_COPY | O = S | Regio van de bron bitmap |
D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY | O = S (alleen waar de bron bestaat) | Samenvoeging van bron- en doel bitmaps. De bestemming wordt niet overschreven waarbij de bron niet bestaat. |
D2D1_COMPOSITE_MODE_MASK_INVERT | O = (1 D) * S + (1 SA) * D | Samenvoeging van bron- en doel bitmaps. De alfawaarden zijn ongewijzigd. |
In de afbeelding ziet u een voorbeeld van elk van de modi met afbeeldingen met een dekking van 1.0 of 0,5.
Voorbeeldcode
Voor een voorbeeld van dit effect downloadt u de voorbeeld-van deDirect2D-samengestelde effectmodi.
Eisen
Eis | Waarde |
---|---|
Minimaal ondersteunde client | Windows 8 en Platform Update voor Windows 7 [desktop-apps | Windows Store-apps] |
Minimaal ondersteunde server | Windows 8 en Platform Update voor Windows 7 [desktop-apps | Windows Store-apps] |
Rubriek | d2d1effects.h |
Bibliotheek | d2d1.lib, dxguid.lib |