EnumFontFamiliesEx

【勇芳软件工作室】汉化HomePreviousNext

[Now Supported on Windows NT]

EnumFontFamiliesEx函数枚举系统中符合LOGFONT结构指定的字体特征的所有字体。EnumFontFamiliesEx枚举基于字体名称,字符集或两者的字体。建议基于Win32的应用程序使用此函数而不是EnumFontFamilies列举字体。

INT EnumFontFamiliesEx(

HDC 【HDC】,//处理设备上下文
LPLOGFONT 【lpLogfont】,//指向逻辑字体信息的指针
FONTENUMPROC 【lpEnumFontFamExProc】,//指向回调函数的指针
LPARAM 【lParam的】,//应用程序提供的数据
DWORD 【dwFlags中】//保留;必须为零
); 

参数

【HDC】

标识设备上下文。

【lpLogfont】

指向LOGFONT结构,其中包含有关要枚举的字体的信息。该函数检查这些成员:

会员描述
为lfcharset如果设置为DEFAULT_CHARSET,则该函数枚举所有字符集中的所有字体。如果设置为有效的字符集值,则该函数仅枚举指定字符集中的字体。
lfFaceName如果设置为空字符串,则该函数枚举每个可用字体名称中的一种字体。如果设置为有效的字体名称,该函数将枚举所有具有指定名称的字体。
lfPitchAndFamily对于除希伯来语和阿拉伯语以外的操作系统的所有语言版本,必须将其设置为零。对于这些语言,将IfPitchAndFamily设置为MONO_FONT,仅枚举在字体中提供所有代码页字符的字体。

【lpEnumFontFamExProc】

指向应用程序定义的回调函数。有关回调函数的更多信息,请参阅EnumFontFamExProc函数。

【lParam的】

指定一个32位应用程序定义的值。该函数将该值与字体信息一起传递给回调函数。

【dwFlags中】

Reserved; must be zero.

返回值

如果函数成功,返回值是回调函数返回的最后一个值。该值取决于指定设备可用的字体系列。

备注

EnumFontFamiliesEx不使用“带标签”的字体名称来标识字符集。相反,它总是将正确的字体名称和单独的字符集值传递给回调函数。该函数根据LOGFONT结构中的为lfcharsetlfFacenameit成员的值枚举字体。

如果为lfcharset为DEFAULT_CHARSET,并且lfFaceName为空字符串,则该函数枚举每个字符集中每个面部中的一种字体。如果lfFaceName不为空,该函数将枚举指定字体中的每个字体,而不管字符集。

如果为lfcharset是有效的字符集值,并且lfFaceName是空字符串,则该函数枚举指定字符集中的每个字体。如果lfFaceName不为空,则该函数枚举具有指定字体和字符集的每个字体。

也可以看看

EnumFontFamilies, EnumFontFamExProc, LOGFONT