AlphaBlend-Funktion (wingdi.h)
Die AlphaBlend-Funktion zeigt Bitmaps mit transparenten oder halbtransparenten Pixeln an.
Syntax
BOOL AlphaBlend(
[in] HDC hdcDest,
[in] int xoriginDest,
[in] int yoriginDest,
[in] int wDest,
[in] int hDest,
[in] HDC hdcSrc,
[in] int xoriginSrc,
[in] int yoriginSrc,
[in] int wSrc,
[in] int hSrc,
[in] BLENDFUNCTION ftn
);
Parameter
[in] hdcDest
Ein Handle für den Zielgerätekontext.
[in] xoriginDest
Die x-Koordinate in logischen Einheiten der oberen linken Ecke des Zielrechtecks.
[in] yoriginDest
Die y-Koordinate in logischen Einheiten der oberen linken Ecke des Zielrechtecks.
[in] wDest
Die Breite des Zielrechtecks in logischen Einheiten.
[in] hDest
Die Höhe des Zielrechtecks in logischen Einheiten.
[in] hdcSrc
Ein Handle für den Quellgerätekontext.
[in] xoriginSrc
Die x-Koordinate in logischen Einheiten der oberen linken Ecke des Quellrechtecks.
[in] yoriginSrc
Die y-Koordinate in logischen Einheiten der oberen linken Ecke des Quellrechtecks.
[in] wSrc
Die Breite des Quellrechtecks in logischen Einheiten.
[in] hSrc
Die Höhe des Quellrechtecks in logischen Einheiten.
[in] ftn
Die Alpha-Blending-Funktion für Quell- und Ziel-Bitmaps, ein globaler Alphawert, der auf die gesamte Quellbit angewendet werden soll, und Formatinformationen für die Quellbitbitbit. Die Quell- und Ziel-Mischfunktionen sind derzeit auf AC_SRC_OVER beschränkt. Siehe die Strukturen BLENDFUNCTION und EMRALPHABLEND .
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.
Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE.
Hinweise
Wenn das Quellrechteck und das Zielrechteck nicht die gleiche Größe aufweisen, wird die Quellbitte so gestreckt, dass sie dem Zielrechteck entspricht. Wenn die SetStretchBltMode-Funktion verwendet wird, wird der iStretchMode-Wert für diese Funktion automatisch in COLORONCOLOR konvertiert (d. h. BLACKONWHITE, WHITEONBLACK und HALFTONE werden in COLORONCOLOR geändert).
Die Zielkoordinaten werden mithilfe der Transformation transformiert, die derzeit für den Zielgerätekontext angegeben ist. Die Quellkoordinaten werden mithilfe der Transformation transformiert, die derzeit für den Quellgerätekontext angegeben ist.
Ein Fehler tritt auf (und die Funktion gibt FALSE zurück), wenn der Quellgerätekontext einen erweiterten Metadateigerätekontext identifiziert.
Wenn Ziel- und Quell-Bitmaps nicht das gleiche Farbformat aufweisen, konvertiert AlphaBlend die Quell-Bitmap in die Übereinstimmung mit der Zielbitbit.
AlphaBlend unterstützt keine Spiegelung. Wenn entweder die Breite oder Höhe der Quelle oder des Ziels negativ ist, schlägt dieser Aufruf fehl.
Rufen Sie beim Rendern auf einem Drucker zuerst GetDeviceCaps mit SHADEBLENDCAPS auf, um zu ermitteln, ob der Drucker das Mischen mit AlphaBlend unterstützt. Beachten Sie, dass für einen Anzeige-DC alle Füllvorgänge unterstützt werden, und diese Flags geben an, ob die Vorgänge beschleunigt werden.
Wenn Quelle und Ziel dieselbe Oberfläche sind, d. h. es sich um den Bildschirm oder dieselbe Speicherbit handelt und sich die Quell- und Zielrechtecke überlappen, tritt ein Fehler auf, und die Funktion gibt FALSE zurück.
Das Quellrechteck muss vollständig innerhalb der Quelloberfläche liegen, andernfalls tritt ein Fehler auf, und die Funktion gibt FALSE zurück.
AlphaBlend schlägt fehl, wenn die Breite oder Höhe der Quelle oder des Ziels negativ ist.
Das SourceConstantAlpha-Element von BLENDFUNCTION gibt einen Alphatransparenzwert an, der für die gesamte Quell-Bitmap verwendet werden soll. Der SourceConstantAlpha-Wert wird mit beliebigen Alphawerten pro Pixel kombiniert. Wenn SourceConstantAlpha 0 ist, wird davon ausgegangen, dass das Bild transparent ist. Legen Sie den SourceConstantAlpha-Wert auf 255 fest (was angibt, dass das Bild undurchsichtig ist), wenn Sie nur Alphawerte pro Pixel verwenden möchten.
Anforderungen
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 (einschließlich Windows.h) |
Bibliothek | Msimg32.lib |
DLL | Msimg32.dll |