BITMAPINFO

This structure defines the dimensions and color information of a Windows-based device-independent bitmap (DIB).

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

Members

  • bmiHeader
    Specifies a bitmap information header structure that contains information about the dimensions of color format. Use the BITMAPINFOHEADER structure.
  • bmiColors
    Contains one of the following:
    • An array of RGBQUAD. The elements of the array make up the color table.

    • An array of 16-bit unsigned integers that specifies indexes into the currently realized logical palette. This use of bmiColors is allowed for functions that use DIBs. When bmiColors elements contain indexes to a realized logical palette, they must also call the following bitmap functions: CreateDIBPatternBrushPt and CreateDIBSection. The iUsage parameter of CreateDIBSection must be set to DIB_PAL_COLORS.

      The number of entries in the array depends on the values of the biBitCount and biClrUsed members of the BITMAPINFOHEADER structure.

      The colors in the bmiColors table appear in order of importance. For more information, see the Remarks section.

Remarks

A device-independent bitmap consists of two distinct parts: a BITMAPINFO structure describing the dimensions and colors of the bitmap, and an array of bytes defining the pixels of the bitmap. The bits in the array are packed together, but each scan line must be padded with zeroes to end on a LONG data-type boundary. If the height of the bitmap is positive, the bitmap is a bottom-up DIB and its origin is the lower-left corner. If the height is negative, the bitmap is a top-down DIB and its origin is the upper left corner.

A bitmap is packed when the bitmap array immediately follows the BITMAPINFO header. Packed bitmaps are referenced by a single pointer. For packed bitmaps, the ClrUsed member of the BITMAPINFOHEADER structure must be set to an even number when using the DIB_PAL_COLORS mode so the DIB bitmap array starts on a DWORD boundary.

Note The bmiColors member should not contain palette indexes if the bitmap is stored in a file or transferred to another application.

Unless the application has exclusive use and control of the bitmap, the bitmap color table should contain explicit RGB values.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 1.0 and later Wingdi.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

CreateDIBPatternBrushPt, CreateDIBSection, SetClipboardData, BITMAPINFOHEADER, LOGBRUSH, RGBQUAD

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.