Freigeben über


CDC::MaskBlt

Kombiniert die Farbdaten für die Quell- und Zielbitmaps mithilfe des angegebenen Masken- und Rastervorgangs.

BOOL MaskBlt( 
   int x, 
   int y, 
   int nWidth, 
   int nHeight, 
   CDC* pSrcDC, 
   int xSrc, 
   int ySrc, 
   CBitmap& maskBitmap, 
   int xMask, 
   int yMask, 
   DWORD dwRop  
);

Parameter

  • x
    Gibt die logische x-Koordinate der linken oberen Ecke des Zielrechtecks an.

  • y
    Gibt die logische y-Koordinate der linken oberen Ecke des Zielrechtecks an.

  • nWidth
    Gibt die Breite, in logischen Einheiten, des Zielrechtecks und der Quellbitmaps an.

  • nHeight
    Gibt die Höhe, in logischen Einheiten, des Zielrechtecks und der Quellbitmaps an.

  • pSrcDC
    Identifiziert den Gerätekontext, von dem die Bitmap kopiert werden soll. Sie muss gleich sein, wenn der dwRop-Parameter einen Rastervorgang angibt, der keine Quelle enthält.

  • xSrc
    Gibt die logische X-Koordinate der oberen linken Ecke der Quellbitmaps an.

  • ySrc
    Gibt die logische Y-Koordinate der oberen linken Ecke der Quellbitmaps an.

  • maskBitmap
    Identifiziert die monochrome Maskenbitmap, die mit der Farbenbitmap im Quellgerätekontext kombiniert wird.

  • xMask
    Gibt den horizontalen Pixeloffset für die Maskenbitmap an, die vom maskBitmap-Parameter angegeben wird.

  • yMask
    Gibt den vertikalen Pixeloffset für die Maskenbitmap an, die vom maskBitmap-Parameter angegeben wird.

  • dwRop
    Gibt Rasteroperationscodes der Vordergrund und des Hintergrunds dreifache fest, die die Funktion verwendet, um die Kombination von Quell- und Zieldaten zu steuern. Der Hintergrundraster-Operationscode wird im hohen Byte höherwertigen des Worts dieses Werts gespeichert; der Vordergrundraster-Operationscode wird im niedrigwertigen Byte höherwertigen des Worts dieses Werts gespeichert; niederwertige das Wort dieses Werts wird ignoriert und darf null sein. Das Makro MAKEROP4 erstellt diese Kombinationen von Vordergrund- und Hintergrundraster-Operationscodes. Weitere Informationen finden Sie in den Hinweisen Erläuterungen zur Vordergrund- und Hintergrund im Kontext dieser Funktion. Siehe die BitBlt-Memberfunktion für eine Liste allgemeiner Rasteroperationscodes.

Rückgabewert

Ungleich 0 (null), wenn die Funktion erfolgreich; 0 andernfalls.

Hinweise

Der Wert 1 in der Maske, die von maskBitmap angegeben wird, gibt an, dass der Vordergrundraster-Operationscode, der von dwRop angegeben wird, an diesem Speicherort angewendet werden soll. Der Wert 0 in der Maske gibt an, dass der Hintergrundraster-Operationscode, der von dwRop angegeben wird, an diesem Speicherort angewendet werden soll. Wenn die Rastervorgänge eine Quelle benötigen, muss das Maskenrechteck das Quellrechteck enthalten. Wenn nicht, schlägt die Funktion. Wenn die Rastervorgänge keine Quelle benötigen, muss das Maskenrechteck das Zielrechteck enthalten. Wenn nicht, schlägt die Funktion.

Wenn eine Drehung oder eine Schertransformation wirksam für den Quellgerätekontext ist, wenn diese Funktion aufgerufen wird, tritt ein Fehler auf. werden jedoch andere Typen Transformationen zulässig.

Wenn die Farbenformate der Quelle, des Musters und der Zielbitmaps unterscheiden, Wird dieser Funktion das Muster- oder Quellformat oder beide, das Zielformat übereinstimmen. Wenn die Maskenbitmap keine monochrome Bitmap ist, tritt ein Fehler auf. Wenn eine erweiterte Metadatei aufgezeichnet wird, tritt ein Fehler auf (und die Funktion gibt 0) zurück, wenn der Quellgerätekontext einen Gerätekontext der erweiterten Metadatei identifiziert. Nicht alle Geräte unterstützen MaskBlt. Eine Anwendung sollte GetDeviceCaps aufrufen, um zu bestimmen, ob ein Gerät diese Funktion unterstützt. Wenn keine Maskenbitmap angegeben wird, verhält sich diese Funktion genau wie BitBlt, mithilfe des Vordergrundraster-Operationscodes. Die Pixeloffsets in der Maskenbitmapzuordnung zum Punkt (0,0) in der Bitmap des Quellgerätekontexts. Dies ist nützlich für Fälle, in denen eine Maskenbitmap einen Satz Masken enthält; Eine Anwendung kann entweder aus ihnen zu einer Maske-blittenden Aufgabe leicht anwenden, indem sie die Pixeloffsets und die Rechteckgrößen anpasst, die an MaskBlt gesendet werden.

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CDC-Klasse

Hierarchiediagramm

CDC::BitBlt

CDC::GetDeviceCaps

CDC::PlgBlt

CDC::StretchBlt

MaskBlt