BITMAPINFOHEADER Structure

The BITMAPINFOHEADER structure contains information for the video stream of an AVI RIFF file. This structure has the following members.

typedef struct tagBITMAPINFOHEADER {
    DWORD  biSize;
    LONG   biWidth;
    LONG   biHeight;
    WORD   biPlanes;
    WORD   biBitCount;
    DWORD  biCompression;
    DWORD  biSizeImage;
    LONG   biXPelsPerMeter;
    LONG   biYPelsPerMeter;
    DWORD  biClrUsed;
    DWORD  biClrImportant;
} BITMAPINFOHEADER;
  • biSize
    Specifies the number of bytes required by the structure.
  • biWidth
    Specifies the width of the bitmap, in pixels.
  • biHeight
    Specifies the height of the bitmap, in pixels. If biHeight is positive, the bitmap is a bottom-up DIB (device-independent bitmap) and its origin is the lower left corner. If biHeight is negative, the bitmap is a top-down DIB and its origin is the upper left corner.
  • biPlanes
    Specifies the number of planes for the target device. This value must be set to 1.
  • biBitCount
    Specifies the number of bits per pixel. Some compression formats need this information to properly decode the colors in the pixel.
  • biCompression
    Specifies the type of compression used or requested. Both existing and new compression formats use this member.
  • biSizeImage
    Specifies the size, in bytes, of the image. This can be set to 0 for uncompressed RGB bitmaps.
  • biXPelsPerMeter
    Specifies the horizontal resolution, in pixels per meter, of the target device for the bitmap. An application can use this value to select a bitmap from a resource group that best matches the characteristics of the current device.
  • biYPelsPerMeter
    Specifies the vertical resolution, in pixels per meter, of the target device for the bitmap.
  • biClrUsed
    Specifies the number of color indices in the color table that are actually used by the bitmap. If this value is zero, the bitmap uses the maximum number of colors corresponding to the value of the biBitCount member for the compression mode specified by biCompression.
  • biClrImportant
    Specifies the number of color indices that are considered important for displaying the bitmap. If this value is zero, all colors are important.

When the value in the biBitCount member is set to greater than eight, video drivers can assume bitmaps are true color and they do not use a color table.

When the value in the biBitCount member is set to less than or equal to eight, video drivers can assume the bitmap uses a palette or color table defined in the BITMAPINFO data structure. This data structure has the following members:

typedef struct tagBITMAPINFO {
    BITMAPINFOHEADER bmiHeader;
    RGBQUAD          bmiColors[1];
} BITMAPINFO;

The BITMAPINFO bmiheader member specifies a BITMAPINFOHEADER structure. The BITMAPINFO bmiColors member specifies an array of RGBQUAD data types that define the colors in the bitmap.

 Last updated on Tuesday, May 18, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.