Aracılığıyla paylaş


CImage::TransparentBlt

Bir bitmap kaynak aygıt içerikten geçerli bu aygıt içeriğini kopyalar.

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( );

Parametreler

  • hDestDC
    Hedef aygıt içeriği için bir tanıtıcı.

  • xDest
    X-koordinatı, hedef dikdörtgeninin sol üst köşesinde, mantıksal birim.

  • yDest
    Y-koordinatı, hedef dikdörtgeninin sol üst köşesinde, mantıksal birim.

  • nDestWidth
    Hedef dikdörtgen mantıksal birimler genişliği.

  • nDestHeight
    Hedef dikdörtgen mantıksal birim yüksekliği.

  • crTransparent
    Saydam olarak değerlendirmek için kaynak bitmap renk.Varsayılan olarak, CLR_INVALID, görüntünün saydam renk olarak ayarlanmış renk kullanılması gerektiğini gösteren.

  • rectDest
    Başvuru bir rect yapısı, hedef tanımlama.

  • xSrc
    X-koordinatı, kaynak dikdörtgenin sol üst köşesinin, mantıksal birim.

  • ySrc
    Y-koordinatı, kaynak dikdörtgenin sol üst köşesinin, mantıksal birim.

  • nSrcWidth
    Kaynak dikdörtgenin mantıksal birimler genişliği.

  • nSrcHeight
    Kaynak dikdörtgenin mantıksal birim yüksekliği.

  • rectSrc
    Başvuru bir RECT kaynak tanımlayıcı yapısı.

Dönüş Değeri

GERÇEK başarılı olursa, aksi halde yanlış.

Notlar

TransparentBlt4 bit / piksel ve 8 bit / piksel kaynak bitmapler için desteklenir.Use CImage::AlphaBlend saydamlığı olan 32 bit-başına-piksel bitmap belirtmek için.

Bu yöntem, Microsoft Windows 2000, Windows 98 ve sonraki sistemlerde uygulanabilir.Bkz: TransparentBlt , Windows SDK ve CImage sınırlamaları önceki işletim sistemleri ile daha ayrıntılı bilgi için.

Örnek

// 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;
}

Gereksinimler

Başlık: atlimage.h

Ayrıca bkz.

Başvuru

CImage sınıfı

CImage::StretchBlt

CImage::MaskBlt

CImage::BitBlt