Sdílet prostřednictvím


CImage::CreateEx

Vytvoří CImage bitmap a připojit ji k dříve vyrobeno CImage objektu.

BOOL CreateEx(
   int nWidth,
   int nHeight,
   int nBPP,
   DWORD eCompression,
   const DWORD* pdwBitmasks = NULL,
   DWORD dwFlags = 0 
) throw( );

Parametry

  • nWidth
    Šířka CImage rastrového obrázku v pixelech.

  • nHeight
    Výška CImage rastrového obrázku v pixelech.Pokud nHeight pozitivní Rastr DIB zdola nahoru a jeho původ je levém dolním rohu.Pokud nHeight je záporné, je Rastr DIB shora dolů a jeho původ je levý horní roh.

  • nBPP
    Počet bitů na pixel v rastru.Obvykle 4, 8, 16, 24 nebo 32.Může být 1 pro monochromatické bitové mapy nebo masky.

  • eCompression
    Určuje typ komprese pro komprimovaný rastrový zdola nahoru (shora dolů DIB nelze komprimovat).Může to být jedna z následujících hodnot:

    • BI_RGB nekomprimovaný formát.Zadání této hodnoty při volání CImage::CreateEx je ekvivalentní volací CImage::Create .

    • BI_BITFIELDS nekomprimovaný formát a tabulka barev se skládá ze tří DWORD barvu masky určující červené, zelené a modré součásti, každého obrazového bodu.To platí při použití s 16 a 32 bpp bitmapy.

  • pdwBitfields
    Používá pouze v případě eCompression je nastavena na BI_BITFIELDS, jinak musí být NULL.Ukazatele na matici tří DWORD bitmasks určení, které bity jednotlivých obrazových bodů se používají pro červenou, zelené a modré barvy, součásti resp..Informace o omezení bitfields, BITMAPINFOHEADER v .

  • dwFlags
    Určuje, pokud má objekt bitmap alfa kanál.Může být kombinací nula nebo více z následujících hodnot:

    • createAlphaChannel lze použít pouze v případě nBPP je 32, a eCompression je BI_RGB.Pokud je zadán, vytvořený obrázek má hodnotu alfa (průhlednost) pro každý obrazový bod uložené v čtvrtý bajt každý obrazový bod (nepoužívaný v bitové kopii 32bitové alfa).Při volání automaticky použit tento alfa kanál CImage::AlphaBlend.

      [!POZNÁMKA]

      Ve volání CImage::Draw, obrazy s alfa kanálem jsou automaticky alfa prolnuté do místa určení.

Vrácená hodnota

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

Příklad

Následující příklad vytvoří pomocí 16 bitů pro zakódování každého obrazového bodu rastrový obrázek 100 x 100 pixelů.V daném obrazovém bodu 16 bitů kódovat bity 0-3 červená složka, 4-7 bitů kódování zelené a modré kódování bitů 8-11.Zbývající 4 bity nepoužívané.

DWORD adwBitmasks[3] = { 0x0000000f, 0x000000f0, 0x00000f00 };
m_myImage.CreateEx(100, 100, 16, BI_BITFIELDS, adwBitmasks, 0);

Požadavky

Záhlaví: atlimage.h

Viz také

Referenční dokumentace

Třída CImage

CImage::CImage

CImage::Create

CImage::AlphaBlend