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 |
); |
The return value is the last value returned by the callback function. Its meaning is implementation specific.
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.