GdiGradientFill-Funktion (wingdi.h)
Die GdiGradientFill-Funktion füllt Rechteck- und Dreiecksstrukturen aus.
Syntax
BOOL GdiGradientFill(
[in] HDC hdc,
[in] PTRIVERTEX pVertex,
[in] ULONG nVertex,
[in] PVOID pMesh,
[in] ULONG nCount,
[in] ULONG ulMode
);
Parameter
[in] hdc
Ein Handle für den Zielgerätekontext.
[in] pVertex
Ein Zeiger auf ein Array von TRIVERTEX-Strukturen , die jeweils einen Dreiecksvertex definieren.
[in] nVertex
Die Anzahl der Scheitelpunkte in pVertex.
[in] pMesh
Ein Array von GRADIENT_TRIANGLE Strukturen im Dreieckmodus oder ein Array von GRADIENT_RECT Strukturen im Rechteckmodus.
[in] nCount
Die Anzahl der Elemente (Dreiecke oder Rechtecke) in pMesh.
[in] ulMode
Der Farbverlaufsfüllmodus. Dieser Parameter kann einen der folgenden Werte annehmen.
Wert | Bedeutung |
---|---|
|
In diesem Modus beschreiben zwei Endpunkte ein Rechteck. Das Rechteck ist so definiert, dass es eine konstante Farbe (angegeben durch die TRIVERTEX-Struktur ) für den linken und rechten Rand hat. GDI interpoliert die Farbe vom linken zum rechten Rand und füllt das Innere aus. |
|
In diesem Modus beschreiben zwei Endpunkte ein Rechteck. Das Rechteck ist so definiert, dass es eine konstante Farbe (angegeben durch die TRIVERTEX-Struktur ) für den oberen und unteren Rand hat. GDI interpoliert die Farbe vom oberen zum unteren Rand und füllt den Innenraum aus. |
|
In diesem Modus wird ein Array von TRIVERTEX-Strukturen zusammen mit einer Liste von Arrayindizes, die separate Dreiecke beschreiben, an GDI übergeben. GDI führt eine lineare Interpolation zwischen Dreiecksvertices durch und füllt das Innere aus. Das Zeichnen erfolgt direkt im Modus 24 und 32 bpp. Dithering wird im 16-, 8-, 4- und 1-bpp-Modus ausgeführt. |
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.
Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE.
Hinweise
Beim Füllen eines Dreiecks zeigt pMesh auf ein Array von GRADIENT_TRIANGLE Strukturen. Jede GRADIENT_TRIANGLE-Struktur gibt den Index von drei Scheitelpunkten im pVertex-Array an. Diese drei Scheitelpunkte bilden ein Dreieck.
Um die Hardwarebeschleunigung zu vereinfachen, muss diese Routine im Dreiecksinnenraum nicht pixelgenau sein.
Beachten Sie, dass GdiGradientFill den Alpha-Member der TRIVERTEX-Struktur nicht verwendet. Um GdiGradientFill mit Transparenz zu verwenden, rufen Sie GdiGradientFill auf, und rufen Sie dann GdiAlphaBlend mit den gewünschten Werten für den Alphakanal jedes Scheitelpunkts auf.
Weitere Informationen finden Sie unter Smooth Shading, Zeichnen eines schattierten Dreiecks und Zeichnen eines schattierten Rechtecks.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wingdi.h (windows.h einschließen) |
Bibliothek | Gdi32.lib |
DLL | Gdi32.dll |