PlgBlt-Funktion (wingdi.h)
Die PlgBlt-Funktion führt eine Bitblockübertragung der Farbdatenbits aus dem angegebenen Rechteck im Quellgerätekontext an das angegebene Parallelogramm im Zielgerätekontext durch. Wenn das angegebene Bitmaskenhandle eine gültige monochrome Bitmap identifiziert, verwendet die Funktion diese Bitmap, um die Farbdatenbits aus dem Quellrechteck zu maskieren.
Syntax
BOOL PlgBlt(
[in] HDC hdcDest,
[in] const POINT *lpPoint,
[in] HDC hdcSrc,
[in] int xSrc,
[in] int ySrc,
[in] int width,
[in] int height,
[in] HBITMAP hbmMask,
[in] int xMask,
[in] int yMask
);
Parameter
[in] hdcDest
Ein Handle für den Zielgerätekontext.
[in] lpPoint
Ein Zeiger auf ein Array von drei Punkten im logischen Raum, die drei Ecken des Zielparallelogramms identifizieren. Die obere linke Ecke des Quellrechtecks wird dem ersten Punkt in diesem Array, die obere rechte Ecke dem zweiten Punkt in diesem Array und die linke untere Ecke dem dritten Punkt zugeordnet. Die untere rechte Ecke des Quellrechtecks wird dem impliziten vierten Punkt im Parallelogramm zugeordnet.
[in] hdcSrc
Ein Handle für den Quellgerätekontext.
[in] xSrc
Die x-Koordinate in logischen Einheiten der oberen linken Ecke des Quellrechtecks.
[in] ySrc
Die y-Koordinate in logischen Einheiten der oberen linken Ecke des Quellrechtecks.
[in] width
Die Breite des Quellrechtecks in logischen Einheiten.
[in] height
Die Höhe des Quellrechtecks in logischen Einheiten.
[in] hbmMask
Ein Handle für eine optionale monochrome Bitmap, die zum Maskieren der Farben des Quellrechtecks verwendet wird.
[in] xMask
Die x-Koordinate in logischen Einheiten der linken oberen Ecke der monochromen Bitmap.
[in] yMask
Die y-Koordinate in logischen Einheiten der oberen linken Ecke der monochromen Bitmap.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.
Hinweise
Die PlgBlt-Funktion funktioniert mit geräteabhängigen Bitmaps.
Der vierte Scheitelpunkt des Parallelogramms (D) wird definiert, indem die ersten drei Punkte (A, B und C ) als Vektoren behandelt werden und D = B +CA berechnen.
Wenn die Bitmaske vorhanden ist, gibt ein Wert von 1 in der Maske an, dass die Quellpixelfarbe an das Ziel kopiert werden soll. Der Wert null in der Maske gibt an, dass die Farbe des Zielpixels nicht geändert werden soll. Wenn das Maskenrechteck kleiner als das Quell- und Zielrechteck ist, repliziert die Funktion das Maskenmuster.
Skalierungs-, Übersetzungs- und Reflektionstransformationen sind im Kontext des Quellgeräts zulässig. Dreh- und Schertransformationen sind es jedoch nicht. Wenn es sich bei der Masken-Bitmap nicht um eine monochrome Bitmap handelt, tritt ein Fehler auf. Der Stretchmodus für den Zielgerätekontext wird verwendet, um zu bestimmen, wie die Pixel gestreckt oder komprimiert werden sollen, falls dies erforderlich ist.
Wenn eine erweiterte Metadatei aufgezeichnet wird, tritt ein Fehler auf, wenn der Quellgerätekontext einen Gerätekontext mit erweiterter Metadatei identifiziert.
Die Zielkoordinaten werden gemäß dem Zielgerätekontext transformiert. Die Quellkoordinaten werden gemäß dem Quellgerätekontext transformiert. Wenn die Quelltransformation eine Drehung oder Schub hat, wird ein Fehler zurückgegeben.
Wenn die Ziel- und Quellrechtecke nicht das gleiche Farbformat aufweisen, konvertiert PlgBlt das Quellrechteck in das Zielrechteck.
Nicht alle Geräte unterstützen die PlgBlt-Funktion . Weitere Informationen finden Sie in der Beschreibung der RC_BITBLT-Rasterfunktion in der GetDeviceCaps-Funktion .
Wenn die Quell- und Zielgerätekontexte inkompatible Geräte darstellen, gibt PlgBlt einen Fehler zurück.
Wenn sie in einem System mit mehreren Monitoren verwendet werden, müssen sowohl hdcSrc als auch hdcDest auf dasselbe Gerät verweisen, andernfalls schlägt die Funktion fehl. Um Daten zwischen DCs für verschiedene Geräte zu übertragen, konvertieren Sie die Speicher-Bitmap in einen DIB, indem Sie GetDIBits aufrufen. Um den DIB auf dem zweiten Gerät anzuzeigen, rufen Sie SetDIBits oder StretchDIBits auf.
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 (einschließlich Windows.h) |
Bibliothek | Gdi32.lib |
DLL | Gdi32.dll |