Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Cria um CImage bitmap e anexá-lo a anteriormente construído CImage objeto.
BOOL CreateEx(
int nWidth,
int nHeight,
int nBPP,
DWORD eCompression,
const DWORD* pdwBitmasks = NULL,
DWORD dwFlags = 0
) throw( );
Parâmetros
nWidth
A largura do CImage bitmap, em pixels.nHeight
A altura do CImage bitmap, em pixels. If nHeight for positivo, o bitmap é um DIB de baixo para cima e sua origem é o canto inferior esquerdo. If nHeight é negativo, o bitmap é um DIB de cima para baixo e sua origem é o canto esquerdo superior.nBPP
Os números de bits por pixel no bitmap.Geralmente 4, 8, 16, 24 ou 32.Pode ser 1 para bitmaps monocromáticos ou máscaras.eCompression
Especifica o tipo de compactação para um bitmap de baixo para cima compactado (DIBs de cima para baixo não podem ser compactados).Pode ser um dos seguintes valores:BI_RGB O formato é descompactado.Especificar este valor ao chamar CImage::CreateEx equivale a chamada CImage::Create.
**BI_BITFIELDS **O formato é descompactado e a tabela de cores consiste em três DWORD máscaras de cor que especificam os componentes vermelhos, verdes e azuis, respectivamente, de cada pixel. Isso é válido quando usado com 16 e 32 bpp bitmaps.
pdwBitfields
Usado somente se eCompression é definido como BI_BITFIELDS, caso contrário, ele deve ser NULO.Um ponteiro para uma matriz de três DWORD bitmasks, especificando os bits de cada pixel são utilizados para os componentes vermelhos, verdes e azuis da cor, respectivamente. Para obter informações sobre as restrições para o bitfields, consulte BITMAPINFOHEADER in the Windows SDK.dwFlags
Especifica se o objeto de bitmap tem um canal alfa.Pode ser uma combinação de zero ou mais dos seguintes valores:**createAlphaChannel **Pode ser usada somente se nBPP é 32, e eCompression é BI_RGB.Se especificado, a imagem criada tem um valor de alfa (transparência) para cada pixel, armazenado no 4 º byte de cada pixel (não usada em uma imagem de 32 bit não alfabéticos).Este canal alfa é automaticamente usada ao chamar CImage::AlphaBlend.
Observação:Em chamadas para CImage::Draw, imagens com um canal alfa são automaticamente alfa combinado para o destino.
Valor de retorno
TRUE se for bem-sucedido.Caso contrário, FALSE.
Exemplo
O exemplo a seguir cria um bitmap de 100 x 100 pixels, usando 16 bits para codificar cada pixel.Em um determinado pixel de 16 bit, bit de 0 a 3 codificam o componente vermelho, bit de 4 a 7 codificam verde e 11 de 8 bit codificam azul.Os bits restantes 4 são não utilizados.
DWORD adwBitmasks[3] = { 0x0000000f, 0x000000f0, 0x00000f00 };
m_myImage.CreateEx(100, 100, 16, BI_BITFIELDS, adwBitmasks, 0);
Requisitos
Cabeçalho: atlimage.h