Freigeben über


Graphics::SetCompositingMode-Methode (gdiplusgraphics.h)

Die Graphics::SetCompositingMode-Methode legt den Compositing-Modus dieses Graphics-Objekts fest.

Syntax

Status SetCompositingMode(
  [in] CompositingMode compositingMode
);

Parameter

[in] compositingMode

Typ: CompositingMode

Element der CompositingMode-Enumeration , die den Compositing-Modus angibt.

Rückgabewert

Typ: Status

Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .

Wenn die Methode fehlschlägt, gibt sie eines der anderen Elemente der Status-Enumeration zurück.

Hinweise

Angenommen, Sie erstellen ein SolidBrush-Objekt basierend auf einer Farbe mit einer Alphakomponente von 192, die etwa 75 Prozent von 255 ist. Wenn für Ihr Graphics-Objekt der Kompositingmodus compositingModeSourceOver festgelegt ist, sind bereiche, die mit dem Volltonpinsel gefüllt sind, eine Mischung aus 75 % Pinselfarbe und 25 % Hintergrundfarbe. Wenn für Ihr Graphics-Objekt der Compositingmodus auf CompositingModeSourceCopy festgelegt ist, wird die Hintergrundfarbe nicht mit der Pinselfarbe gemischt. Die vom Pinsel gerenderte Farbe weist jedoch eine Intensität von 75 Prozent auf, die bei einer Alphakomponente von 255 entspricht.

Sie können CompositingModeSourceCopy nicht zusammen mit TextRenderingHintClearTypeGridFit verwenden.

Beispiele

Im folgenden Beispiel wird ein Graphics-Objekt erstellt und dessen Compositingmodus auf CompositingModeSourceOver festgelegt. Der Code erstellt ein SolidBrush-Objekt basierend auf einer Farbe mit einer Alphakomponente von 128. Der Code übergibt die Adresse dieses Pinsels an die Graphics::FillRectangle-Methode des Graphics-Objekts , um ein Rechteck mit einer Farbe zu füllen, die eine Halb-und-Halb-Mischung aus Pinselfarbe und Hintergrundfarbe darstellt. Dann legt der Code den Compositing-Modus des Graphics-Objekts auf CompositingModeSourceCopy fest und füllt ein zweites Rechteck mit demselben Pinsel. In diesem zweiten Rechteck wird die Pinselfarbe nicht mit der Hintergrundfarbe gemischt.

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);
}

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile gdiplusgraphics.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Siehe auch

Alphablending von Linien und Füllungen

Compositingmode

Grafiken

Graphics::GetCompositingMode

Graphics::GetCompositingQuality

Graphics::SetCompositingQuality

Graphics::SetTextRenderingHint

Hatchbrush

Neue Funktionen

Solidbrush

Textrenderinghint