Partager via


Graphics::SetCompositingMode, méthode (gdiplusgraphics.h)

La méthode Graphics::SetCompositingMode définit le mode de composition de cet objet Graphics .

Syntaxe

Status SetCompositingMode(
  [in] CompositingMode compositingMode
);

Paramètres

[in] compositingMode

Type : CompositingMode

Élément de l’énumération CompositingMode qui spécifie le mode de composition.

Valeur retournée

Type : État

Si la méthode réussit, elle retourne Ok, qui est un élément de l’énumération Status .

Si la méthode échoue, elle retourne l’un des autres éléments de l’énumération Status .

Notes

Supposons que vous créez un objet SolidBrush basé sur une couleur qui a un composant alpha de 192, soit environ 75 % de 255. Si votre objet Graphics a son mode de composition défini sur CompositingModeSourceOver, les zones remplies avec le pinceau unie sont un mélange qui est de 75 % de couleur de pinceau et de 25 % de couleur d’arrière-plan. Si votre objet Graphics a son mode de composition défini sur CompositingModeSourceCopy, la couleur d’arrière-plan n’est pas fusionnée avec la couleur du pinceau. Toutefois, la couleur rendue par le pinceau a une intensité de 75 % de ce qu’elle serait si le composant alpha était 255.

Vous ne pouvez pas utiliser CompositingModeSourceCopy avec TextRenderingHintClearTypeGridFit.

Exemples

L’exemple suivant crée un objet Graphics et définit son mode de composition sur CompositingModeSourceOver. Le code crée un objet SolidBrush basé sur une couleur qui a un composant alpha de 128. Le code passe l’adresse de ce pinceau à la méthode Graphics::FillRectangle de l’objet Graphics pour remplir un rectangle avec une couleur qui est un mélange de moitié et demi de la couleur du pinceau et de la couleur d’arrière-plan. Ensuite, le code définit le mode de composition de l’objet Graphics sur CompositingModeSourceCopy et remplit un deuxième rectangle avec le même pinceau. Dans ce deuxième rectangle, la couleur du pinceau n’est pas fusionnée avec la couleur d’arrière-plan.

VOID Example_SetCompositingMode(HDC hdc)
{
   Graphics graphics(hdc);
   
   // Create a SolidBrush object with an alpha-blended color.
   SolidBrush alphaBrush(Color(180, 255, 0, 0));

   // Set the compositing mode to CompositingModeSourceOver,
   // and fill a rectangle.
   graphics.SetCompositingMode(CompositingModeSourceOver);
   graphics.FillRectangle(&alphaBrush, 0, 0, 100, 100);

   // Set the compositing mode to CompositingModeSourceCopy,
   // and fill a rectangle.
   graphics.SetCompositingMode(CompositingModeSourceCopy);
   graphics.FillRectangle(&alphaBrush, 100, 0, 100, 100);
}

Spécifications

   
Client minimal pris en charge Windows XP, Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête gdiplusgraphics.h (include Gdiplus.h)
Bibliothèque Gdiplus.lib
DLL Gdiplus.dll

Voir aussi

Fusion alpha de lignes et de remplissages

CompositingMode

Graphismes

Graphics::GetCompositingMode

Graphics::GetCompositingQuality

Graphics::SetCompositingQuality

Graphics::SetTextRenderingHint

HatchBrush

Nouvelles fonctionnalités

SolidBrush

TextRenderingHint