Prev Next

EnumFontFamilies info  Overview  Group

The EnumFontFamilies function enumerates the fonts in a specified font family that are available on a specified device.

int EnumFontFamilies(

    HDC hdc,

// handle to device control

    LPCTSTR lpszFamily,

// pointer to family-name string

    FONTENUMPROC lpEnumFontFamProc,

// pointer to callback function

    LPARAM lParam 

// address of application-supplied data

   );

Parameters

hdc
Identifies the device context.
lpszFamily
Points to a null-terminated string that specifies the family name of the desired fonts. If lpszFamily is NULL, EnumFontFamilies randomly selects and enumerates one font of each available type family.
lpEnumFontFamProc
Specifies the procedure-instance address of the application-defined callback function. For information about the callback function, see the EnumFontFamProc function.
lParam
Points to application-supplied data. The data is passed to the callback function along with the font information.

Return Values

The return value is the last value returned by the callback function. Its meaning is implementation specific.

Remarks

The EnumFontFamilies function differs from the EnumFonts function in that it retrieves the style names associated with a TrueType font. With EnumFontFamilies, information can be retrieved about unusual font styles (for example, Outline) that could not be enumerated by using the EnumFonts function. Win32-based applications should use EnumFontFamilies instead of EnumFonts.

For each font having the typeface name specified by the lpszFamily parameter, the EnumFontFamilies function retrieves information about that font and passes it to the function pointed to by the lpEnumFontFamProc parameter. The application-defined callback function can process the font information as desired. Enumeration continues until there are no more fonts or the callback function returns zero.

See Also

EnumFontFamProc, EnumFonts