Freigeben über


CImage::CreateEx

Erstellt eine CImage Bitmap und fügt sie dem zuvor erstellten CImage-Objekt.

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

Parameter

  • nWidth
    Die Breite der CImage Bitmaps, in Pixel.

  • nHeight
    Die Höhe der CImage Bitmaps, in Pixel.Wenn nHeight positiv ist, ist die Bitmap ein Bottom-Up-Ansatz DIBs und sein Ursprung ist die linke untere Ecke.Wenn nHeight negativ ist, ist die Bitmap ein Top-Down-Ansatz DIBs und sein Ursprung ist die obere linke Ecke.

  • nBPP
    Die Anzahl der Bits pro Pixel in der Bitmap.Normalerweise 4, 8, 16, 24 oder 32.Kann 1 für monochrome Bitmaps oder Masken.

  • eCompression
    Gibt den Komprimierungstyp für eine komprimierte Bottom-up-Bitmap an (Top-Down-Ansatz DIB kann nicht komprimiert werden).Kann einer der folgenden Werte sein:

    • BI_RGB das Format ist dekomprimiert.Diesen Wert festgelegt, wenn CImage::CreateEx aufruft, entspricht dem Aufrufen von CImage::Create entsprechend.

    • BI_BITFIELDS das Format ist dekomprimiert und die Farbtabelle besteht aus drei DWORD Farbenmasken, die der Rot-, Grün- und angeben, aus bzw. Blauanteil jedes Pixels.Dies ist gültig, wenn es mit 16 - und 32 bpp Bitmaps verwendet wird.

  • pdwBitfields
    Nur verwendet, wenn eCompression zu BI_BITFIELDS festgelegt ist; andernfalls muss es NULL sein.Ein Zeiger auf ein Array mit drei Bitmasken, von anzugeben, welche Bits jedes Pixels für der Rot-, Grün- und verwendet werden DWORD von Blauanteil der Farbe, bzw.Informationen zu Einschränkungen für die Bitfelder, finden Sie unter BITMAPINFOHEADER in Windows SDK.

  • dwFlags
    Gibt an, ob das Bit-Übersichtsobjekt einen Alphakanal verfügt.Kann eine Kombination aus null oder mehrere der folgenden Werte:

    • createAlphaChannel kann nur verwendet werden, wenn nBPP 32 ist und eCompressionBI_RGB ist.Wenn es angegeben wird, hat das erstellte Bild einen Alpha (Transparenz) Wert für jedes Pixel, im 4 Byte gespeichert. jedes Pixels (nicht verwendet in einem NichtAlpha 32-Bit-Image).Dieser Alphakanal wird automatisch verwendet, wenn Sie CImage::AlphaBlend aufruft.

      HinweisHinweis

      In Aufrufen zu CImage::Draw, sind Bilder mit einem Alphakanal automatisch das Alpha-, das dem Ziel ausgeführt.

Rückgabewert

TRUE, wenn erfolgreich.Andernfalls FALSE.

Beispiel

Das folgende Beispiel erstellt eine Bitmap des Pixels 100x100, mit 16 Bits, um jedes Pixel zu codieren.In einem angegebenen 16-Bit-Pixel Code Bits 0-3 den Rotanteil, codieren Bits 4-7, Grün und Blau Bits 8-11 codieren.Die verbleibenden 4 Bits sind nicht verwendet.

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

Anforderungen

Header: atlimage.h

Siehe auch

Referenz

CImage-Klasse

CImage::CImage

CImage::Create

CImage::AlphaBlend