Sdílet prostřednictvím


CImage::TransparentBlt

Zkopíruje bitmapy z kontextu zařízení zdroj této aktuální kontext zařízení.

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

Parametry

  • hDestDC
    Popisovač kontextu zařízení určení.

  • xDest
    Souřadnice x, v logických jednotkách horního levého rohu cílového obdélníku.

  • yDest
    Souřadnici y, v logických jednotkách horního levého rohu cílového obdélníku.

  • nDestWidth
    Šířka v logické jednotky cílového obdélníku.

  • nDestHeight
    Výška v logické jednotky cílového obdélníku.

  • crTransparent
    Barva v zdrojová bitmapa zachází jako průhledný.Ve výchozím nastavení CLR_INVALID, označující nutno barvu aktuálně nastaven jako průhledné barvy obrazu.

  • rectDest
    Odkaz na RECT struktury identifikaci cíle.

  • xSrc
    Souřadnice x, v logických jednotkách horního levého rohu zdrojového obdélníku.

  • ySrc
    Souřadnici y, v logických jednotkách horního levého rohu zdrojového obdélníku.

  • nSrcWidth
    Šířka v logických jednotek zdrojového obdélníku.

  • nSrcHeight
    Výška v logických jednotkách zdrojového obdélníku.

  • rectSrc
    Odkaz na RECT struktury identifikaci zdroje.

Vrácená hodnota

TRUE v případě úspěchu jinak FALSE.

Poznámky

TransparentBltje podporován pro zdroj bitmapy 4 bitů na pixel a 8 bitů na pixel.Použití CImage::AlphaBlend určit průhlednost bitmap 32 bitů na pixel.

Tato metoda je použitelná pro systém Microsoft Windows 2000, Windows 98 a novější systémy.Viz TransparentBlt v a CImage omezení se staršími operačními systémy podrobnější informace.

Příklad

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

Požadavky

Záhlaví: atlimage.h

Viz také

Referenční dokumentace

Třída CImage

CImage::StretchBlt

CImage::MaskBlt

CImage::BitBlt