CImage::CreateEx
Tworzy CImage bitmapowe i dołączyć go do wcześniej konstruowanej CImage obiektu.
BOOL CreateEx(
int nWidth,
int nHeight,
int nBPP,
DWORD eCompression,
const DWORD* pdwBitmasks = NULL,
DWORD dwFlags = 0
) throw( );
Parametry
nWidth
Szerokość CImage bitmapy w pikselach.nHeight
Wysokość CImage bitmapy w pikselach.Jeśli nHeight jest dodatnia, bitmapa jest DIB oddolnego i jego pochodzenia jest w lewym dolnym rogu.Jeśli nHeight jest ujemna, jest mapa bitowa DIB góra dół i jego pochodzenia jest w lewym górnym rogu.nBPP
Liczba bitów na piksel bitmapy.Zazwyczaj 4, 8, 16, 24 lub 32.Może być 1 monochromatyczne lub maski.eCompression
Określa typ kompresji dla skompresowanego bitmapy oddolnego (nie można skompresować DIBs góra dół).Może to być jedna z następujących wartości:BI_RGB format jest nieskompresowany.Określenie tej wartości podczas wywoływania CImage::CreateEx jest odpowiednikiem telefonicznej CImage::Create.
BI_BITFIELDS format jest nieskompresowany i tabela kolorów składa się z trzech DWORD koloru maski, określających red, green i blue składników, odpowiednio, każdego piksela.Jest to ważne, gdy używana z 16 i 32 bpp bitmapy.
pdwBitfields
Używane, jeśli eCompression jest ustawiona na BI_BITFIELDS, w przeciwnym razie muszą być NULL.Wskaźnik do tablicy trzech DWORD masek bitowych, określając, które bity poszczególnych pikseli są używane dla koloru czerwonego, zielone i niebieskie składniki kolorów, odpowiednio.Informacje dotyczące ograniczeń dla pola bitowe, zobacz BITMAPINFOHEADER w Windows SDK.dwFlags
Określa, jeśli obiekt bitmap ma kanał alfa.Może być kombinacją zero lub więcej z następujących wartości:createAlphaChannel może być używany tylko, jeśli nBPP 32, i eCompression jest BI_RGB.Jeśli określony, utworzony obraz ma wartość alfa (przezroczystości) dla każdego piksela przechowywane w czwarty bajt każdego piksela (nieużywane obrazu 32-bitowe alfa).Ten kanał alfa jest automatycznie używany podczas wywoływania CImage::AlphaBlend.
[!UWAGA]
W wywołaniach CImage::Draw, obrazów z kanałem alfa są automatycznie alfa mieszane do miejsca przeznaczenia.
Wartość zwracana
TRUE w przypadku powodzenia.W przeciwnym razie FALSE.
Przykład
Poniższy przykład tworzy 100 x 100 pikseli bitmapy, przy użyciu 16 bitów do kodowania poszczególnych pikseli.W pikselu 16-bitowe bity 0-3 kodować czerwony składnik, 4-7 bitów kodować zielony i bity 8-11 kodować niebieski.Pozostałe 4 bity są nieużywane.
DWORD adwBitmasks[3] = { 0x0000000f, 0x000000f0, 0x00000f00 };
m_myImage.CreateEx(100, 100, 16, BI_BITFIELDS, adwBitmasks, 0);
Wymagania
Nagłówek: atlimage.h