Jump to content

BITMAPINFOHEADER2

From EDM2
Revision as of 18:35, 25 May 2024 by Martini (talk | contribs)

Bit-map information header structure.

Each bit plane logically contains (cx * cy * cBitCount) bits, although the actual length can be greater because of padding.

Note
Many functions can accept either this structure or the BITMAPINFOHEADER structure. Where possible, use BITMAPINFOHEADER2.
typedef struct _BITMAPINFOHEADER2 {
 ULONG   cbFix;          /* Length of structure. */
 ULONG   cx;             /* Bit-map width in pels. */
 ULONG   cy;             /* Bit-map height in pels. */
 USHORT  cPlanes;        /* Number of bit planes. */
 USHORT  cBitCount;      /* Number of bits per pel within a plane. */
 ULONG   ulCompression;  /* Compression scheme used to store the bit map. */
 ULONG   cbImage;        /* Length of bit-map storage data, in bytes. */
 ULONG   cxResolution;   /* Horizontal component of the resolution of target device. */
 ULONG   cyResolution;   /* Vertical component of the resolution of target device. */
 ULONG   cclrUsed;       /* Number of color indexes used. */
 ULONG   cclrImportant;  /* Minimum number of color indexes for satisfactory appearance of the bit map. */
 USHORT  usUnits;        /* Units of measure. */
 USHORT  usReserved;     /* Reserved. */
 USHORT  usRecording;    /* Recording algorithm. */
 USHORT  usRendering;    /* Halftoning algorithm. */
 ULONG   cSize1;         /* Size value 1. */
 ULONG   cSize2;         /* Size value 2. */
 ULONG   ulColorEncoding;/* Color encoding. */
 ULONG   ulIdentifier;   /* Reserved for application use. */
} BITMAPINFOHEADER2;

typedef BITMAPINFOHEADER2 *PBITMAPINFOHEADER2;

Fields

cbFix (ULONG)
   Length of structure.
   The structure can be truncated after cBitCount or any subsequent field.
cx (ULONG)
   Bitmap width in pels.
cy (ULONG)
   Bitmap height in pels.
cPlanes (USHORT)
   Number of bit planes.
cBitCount (USHORT)
   Number of bits per pel within a plane.