CImage::TransparentBlt
Kopiert eine Bitmap vom Quellgerätekontext zu diesem aktuellen Gerätekontext.
BOOL TransparentBlt(
HDC hDestDC,
int xDest,
int yDest,
int nDestWidth,
int nDestHeight,
UINT crTransparent = CLR_INVALID
) const throw( );
BOOL TransparentBlt(
HDC hDestDC,
const RECT& rectDest,
UINT crTransparent = CLR_INVALID
) const throw( );
BOOL TransparentBlt(
HDC hDestDC,
int xDest,
int yDest,
int nDestWidth,
int nDestHeight,
int xSrc,
int ySrc,
int nSrcWidth,
int nSrcHeight,
UINT crTransparent = CLR_INVALID
) const throw( );
BOOL TransparentBlt(
HDC hDestDC,
const RECT& rectDest,
const RECT& rectSrc,
UINT crTransparent = CLR_INVALID
) const throw( );
Parameter
hDestDC
Ein Handle für Zielgerätekontext.xDest
Die x-Koordinate, in logischen Einheiten, der linken oberen Ecke des Zielrechtecks.yDest
Die y-Koordinate, in logischen Einheiten, der linken oberen Ecke des Zielrechtecks.nDestWidth
Die Breite, in logischen Einheiten, des Zielrechtecks.nDestHeight
Die Höhe, in logischen Einheiten, des Zielrechtecks.crTransparent
Die Farbe in der Quellbitmap, zu behandeln, als transparent.Standardmäßig CLR_INVALID darauf liegt, dass die Farbe gerade festgelegt an, wie die transparente Farbe des Bilds verwendet werden soll.rectDest
Ein Verweis auf eine RECT-Struktur, das Ziel der.xSrc
Die x-Koordinate, in logischen Einheiten, der linken oberen Ecke des Quellrechtecks.ySrc
Die y-Koordinate, in logischen Einheiten, der linken oberen Ecke des Quellrechtecks.nSrcWidth
Die Breite, in logischen Einheiten, des Quellrechtecks.nSrcHeight
Die Höhe, in logischen Einheiten, des Quellrechtecks.rectSrc
Ein Verweis auf eine RECT-Struktur, die Quelle der.
Rückgabewert
TRUE, wenn erfolgreich; andernfalls, FALSE.
Hinweise
TransparentBlt wird für Quellbitmaps von 4 Bits pro Pixel und 8 Bits pro Pixel unterstützt.Verwenden Sie CImage::AlphaBlend, um 32 Bit pro Pixel Bitmaps mit Transparenz anzugeben.
Diese Methode ist in Microsoft Windows 2000, Windows 98 zu und zu neueren Systemen anwendbar.Siehe TransparentBlt in Windows SDK und CImage-Einschränkungen mit älteren Betriebssystemen für ausführlichere Informationen.
Beispiel
// Performs a transparent blit from the source image to the destination
// image using the images' current transparency settings
BOOL TransparentBlt(CImage* pSrcImage, CImage* pDstImage, int xDest, int yDest,
int nDestWidth, int nDestHeight)
{
HDC hDstDC = NULL;
BOOL bResult;
if(pSrcImage == NULL || pDstImage == NULL)
{
// Invalid parameter
return FALSE;
}
// Obtain a DC to the destination image
hDstDC = pDstImage->GetDC();
// Perform the blit
bResult = pSrcImage->TransparentBlt(hDstDC, xDest, yDest, nDestWidth, nDestHeight);
// Release the destination DC
pDstImage->ReleaseDC();
return bResult;
}
Anforderungen
Header: atlimage.h