Estrutura BITMAPINFO (wingdi.h)

A estrutura BITMAPINFO define as dimensões e as informações de cor de um DIB.

Sintaxe

typedef struct tagBITMAPINFO {
  BITMAPINFOHEADER bmiHeader;
  RGBQUAD          bmiColors[1];
} BITMAPINFO, *LPBITMAPINFO, *PBITMAPINFO;

Membros

bmiHeader

Uma estrutura BITMAPINFOHEADER que contém informações sobre as dimensões do formato de cor.

.

bmiColors[1]

O membro bmiColors contém um dos seguintes:

  • Uma matriz de RGBQUAD. Os elementos da matriz que compõem a tabela de cores.
  • Uma matriz de inteiros sem sinal de 16 bits que especifica índices na paleta lógica atualmente realizada. Esse uso de bmiColors é permitido para funções que usam DIBs. Quando os elementos bmiColors contêm índices para uma paleta lógica realizada, eles também devem chamar as seguintes funções de bitmap:

    Createdibitmap

    CreateDIBPatternBrush

    Createdibsection

    O parâmetro iUsage de CreateDIBSection deve ser definido como DIB_PAL_COLORS.

O número de entradas na matriz depende dos valores dos membros biBitCount e biClrUsed da estrutura BITMAPINFOHEADER .

As cores na tabela bmiColors aparecem em ordem de importância. Para obter mais informações, consulte a seção Comentários.

Comentários

Um DIB consiste em duas partes distintas: uma estrutura BITMAPINFO que descreve as dimensões e as cores do bitmap e uma matriz de bytes definindo os pixels do bitmap. Os bits na matriz são empacotados juntos, mas cada linha de verificação deve ser acolchoada com zeros para terminar em um limite de tipo de dados LONG . Se a altura do bitmap for positiva, o bitmap será um DIB de baixo para cima e sua origem será o canto inferior esquerdo. Se a altura for negativa, o bitmap será um DIB de cima para baixo e sua origem será o canto superior esquerdo.

Um bitmap é empacotado quando a matriz de bitmap segue imediatamente o cabeçalho BITMAPINFO . Bitmaps empacotados são referenciados por um único ponteiro. Para bitmaps empacotados, o membro biClrUsed deve ser definido como um número par ao usar o modo DIB_PAL_COLORS para que a matriz de bitmap DIB comece em um limite DWORD .

Observação  

O membro bmiColors não deve conter índices de paleta se o bitmap deve ser armazenado em um arquivo ou transferido para outro aplicativo.

A menos que o aplicativo tenha uso exclusivo e controle do bitmap, a tabela de cores bitmap deve conter valores RGB explícitos.

 

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho wingdi.h (inclua Windows.h)

Confira também

BITMAPINFOHEADER

Estruturas de bitmap

Visão geral do Bitmaps

CreateDIBPatternBrush

Createdibsection

Createdibitmap

RGBQUAD