4.3 Version-Specific Glyph Tables

The dfCharTable member for Windows 2.x has a GlyphEntry structure with the following format:

GlyphEntry      struc
geWidth                 dw      ?  ; width of char bitmap, pixels
geOffset                dw      ?  ; pointer to the bits
GlyphEntry      ends

The dfCharTable member in Windows 3.0 and later is dependent on the format of the glyph bitmap. The only formats supported are DFF_FIXED and DFF_PROPORTIONAL.

DFF_FIXED
DFF_PROPORTIONAL

GlyphEntry      struc
geWidth                 dw      ?  ; width of char bitmap, pixels
geOffset                dd      ?  ; pointer to the bits
GlyphEntry      ends

DFF_ABCFIXED
DFF_ABCPROPORTIONAL


GlyphEntry      struc
geWidth                 dw      ?  ; width of char bitmap, pixels
geOffset                dd      ?  ; pointer to the bits
geAspace                dd      ?  ; A space, fract pixels (16.16)
geBspace                dd      ?  ; B space, fract pixels (16.16)
geCspace                dw      ?  ; C space, fract pixels (16.16)
GlyphEntry      ends

Fractional pixels are expressed as 32-bit signed numbers with an implicit binary point between bits 15 and 16. This is referred to as a 16.16 (“sixteen dot sixteen”) fixed-point number.

The ABC spacing in the following example is the same as defined previously. However, specific sets are defined for each character:

DFF_1COLOR                         ; 8 pixels per byte
DFF_16COLOR                        ; 2 pixels per byte
DFF_256COLOR                       ; 1 pixel per byte
DFF_RGBCOLOR                       ; RGB quads

GlyphEntry      struc
geWidth                 dw      ?  ; width of char bitmap, pixels
geOffset                dd      ?  ; pointer to the bits
geHeight                dw      ?  ; height of char bitmap, pixels
geAspace                dd      ?  ; A space, fract pixels (16.16)
geBspace                dd      ?  ; B space, fract pixels (16.16)
geCspace                dd      ?  ; C space, fract pixels (16.16)
GlyphEntry      ends