DrvQueryAdvanceWidths

BOOL DrvQueryAdvanceWidths(

    DHPDEV dhpdev,

    FONTOBJ *pfo,

    ULONG iMode,

    HGLYPH *phg,

    PVOID *pvWidths,

    ULONG cGlyphs

   );

DrvQueryAdvanceWidths returns character advance widths for a specified set of glyphs.

Parameters

dhpdev
Identifies a PDEV previously returned by DrvEnablePDEV.
pfo
Points to a FONTOBJ structure that identifies the font instance.
iMode
Specifies the type of information to be provided. This parameter can be one of the following values:

Value

Meaning

QAW_GETWIDTHS

The character advance widths are recorded as an array of 12.4 fixed-point numbers. This mode will not be used if the widths exceed the range of the 12.4 representation. The function returns TRUE if successful.

QAW_GETEASYWIDTHS

The character advance widths are returned as an array of 12.4 fixed-point numbers. This mode will not be used if the widths exceed the range of the 12.4 representation. This routine should compute widths as quickly as possible. If the computation of a glyph’s character advance width cannot be accomplished efficiently, the driver should write 0xFFFF into the buffer for that glyph. The function returns DDI_ERROR if an error occurs, FALSE if not all widths can be efficiently computed for this mode, or TRUE in all other cases.

phg
Points to an array of HGLYPH structures that specify the glyphs for which the driver will return character advance widths.
pvWidths
Points to a buffer where the driver will record data.
cGlyphs
Specifies the number of glyphs in the input buffer pointed to by phg.

Return Value

The return value is dependent on the value of the iMode parameter.

See Also

DrvEnablePDEV, FONTOBJ