Effet composite
Utilisez l’effet composite pour combiner 2 images ou plus. Cet effet a 13 modes composites différents. T
L’effet composite accepte au moins 2 entrées. Lorsque vous spécifiez 2 images, la destination est la première entrée (index 0) et la source est la deuxième entrée (index 1). Si vous spécifiez plus de 2 entrées, les images sont composées à partir de la première entrée, puis de la seconde, et ainsi de suite.
Cet effet implémente tous les modes à l’aide de l’unité de fusion de l’unité de traitement graphique (GPU).
Le CLSID de cet effet est CLSID _ D2D1Composite.
- Exemple d’image
- Propriétés d’effet
- Types de mode
- Exemple de code
- Configuration requise
- Rubriques connexes
Exemple d’image
L’image ici montre 2 rectangles arrondis de la même taille qui se chevauchent. Le rectangle bleu est la source et le rectangle rouge est la destination. Les images ont été composites avec le mode Source sur.

Voici un autre exemple utilisant le mode par défaut.
| Avant image 1 |
|---|
![]() |
| Avant image 2 |
![]() |
| After |
![]() |
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();
Propriétés d’effet
| Nom complet et énumération d’index | Type et valeur par défaut | Description |
|---|---|---|
| Mode _Mode d2d1 composite _ prop _ |
D2D1 _ mode composite _ _ _ Source en mode composite d2d1 _ _ sur |
Mode utilisé pour l’effet. |
Types de mode
Le tableau ci-dessous montre les modes de cet effet. Les équations figurant dans le tableau utilisent les éléments suivants :
- O = sortie
- S = source
- SA = source alpha
- D = destination
- DA = alpha de destination
| Énumération | Sommaire | Taille de la bitmap de sortie |
|---|---|---|
| _ _ Source en mode composite d2d1 _ _ sur | O = S + (1 SA) * D | Union des bitmaps sources et de destination |
| _Destination du mode composite d2d1 _ _ _ sur | O = (1 DA) * S + D | Union des bitmaps sources et de destination |
| _ _ Source en mode composite d2d1 _ _ dans | O = DA * S | Intersection des bitmaps de source et de destination |
| _ _ Destination du mode composite d2d1 _ _ dans | O = SA * D | Intersection des bitmaps de source et de destination |
| _ _ Source en mode composite d2d1 _ _ out | O = (1-DA) * S | Région de la bitmap source |
| D2D1 _ _ sortie de _ destination en mode composite _ | O = (1-SA) * D | Région de la bitmap de destination |
| D2D1 _ _ source en mode composite haut _ _ | O = DA * S + (1-sa) * D | Région de la bitmap de destination |
| D2D1 _ de _ destination en mode composite par- _ _ dessus | O = (1-DA) * S + sa * D | Région de la bitmap source |
| D2D1 _ mode composite _ _ Xor | O = (1-DA) * S + (1-sa) * D | Union des bitmaps sources et de destination |
| D2D1 _ mode composite _ _ plus | O = S + D | Union des bitmaps sources et de destination |
| _ _ Copie source en mode COMPOSite d2d1 _ _ | O = S | Région de la bitmap source |
| _ _ _ Copie source délimitée en _ mode composite d2d1 _ | O = S (uniquement lorsque la source existe) | Union des bitmaps sources et de destination. La destination n’est pas remplacée lorsque la source n’existe pas. |
| _Masque d2d1 _ mode composite _ _ inversé | O = (1 D) * S + (1 sa) * D | Union des bitmaps sources et de destination. Les valeurs alpha sont inchangées. |
La figure ci-dessous montre un exemple de chacun des modes avec des images qui ont une opacité de 1,0 ou 0,5.

Exemple de code
Pour obtenir un exemple de cet effet, téléchargez l' exemple de modes d’effet composite de Direct2D.
Spécifications
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge | mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store] |
| Serveur minimal pris en charge | mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store] |
| En-tête | d2d1effects. h |
| Bibliothèque | d2d1. lib, dxguid. lib |

.png)
