typedef struct _BITMAPMETRICS {
SIZEL sizlExtent;
POINTFX pfxOrigin;
POINTFX pfxCharInc;
} BITMAPETRICS;
The BITMAPMETRICS structure defines the character cell that corresponds to a given glyph bitmap. The structure gives the width and height of the cell, the position of the bitmap relative to the origin of the cell, and the horizontal and vertical increments.
sizlExtent
Specifies the width and height of the bitmap. Since scan lines are aligned on 32-bit boundaries, the byte width of a scan line is the number of pixels rounded to the next multiple of 32 and divided by 8.
pfxOrigin
Specifies the position of the upper-left corner of the bitmap relative to the character origin.
pfxCharInc
Specifies the increment to the next character. In this case, PFXCHARINC.X is the increment along the baseline.
The increment and origin of a character may be such that consecutive characters overlap. That is, the origin may be negative or the increment may be smaller that the actual width. The device driver is responsible for drawing overlapping glyphs without overwriting characters.
When calculating string widths, a device driver uses the increment as the width.