EnumFontFamiliesW 函数 (wingdi.h)

EnumFontFamilies 函数枚举指定设备上可用的指定字体系列中的字体。

注意 此函数仅用于与 16 位版本的 Windows 兼容。 应用程序应使用 EnumFontFamiliesEx 函数。
 

语法

int EnumFontFamiliesW(
  [in] HDC           hdc,
  [in] LPCWSTR       lpLogfont,
  [in] FONTENUMPROCW lpProc,
  [in] LPARAM        lParam
);

参数

[in] hdc

用于枚举字体的设备上下文的句柄。

[in] lpLogfont

指向以 null 结尾的字符串的指针,该字符串指定所需字体的系列名称。 如果 lpszFamilyNULLEnumFontFamilies 选择并枚举每个可用类型系列的一种字体。

[in] lpProc

指向应用程序定义的回调函数的指针。 有关详细信息,请参阅 EnumFontFamProc

[in] lParam

指向应用程序提供数据的指针。 数据将连同字体信息一起传递到回调函数。

返回值

返回值是回调函数返回的最后一个值。 其含义是特定于实现。

言论

对于每个字体具有由 lpszFamily 参数指定的字样名称,EnumFontFamilies 函数将检索有关该字体的信息,并将其传递给由 lpEnumFontFamProc 参数指向的函数。 应用程序定义的回调函数可以根据需要处理字体信息。 枚举将继续,直到没有更多字体或回调函数返回零。

当设备上下文上的图形模式设置为使用 SetGraphicsMode 函数GM_ADVANCED并且DEVICE_FONTTYPE标志传递给 FontType 参数时,此函数将返回系统上类型为 1 和 OpenType 字体的列表。 当图形模式未设置为GM_ADVANCED时,此函数将返回系统上类型为 1、OpenType 和 TrueType 字体的列表。

许多东亚语言的字体有两个字号:英语名称和本地化名称。 EnumFontsEnumFontFamiliesEnumFontFamiliesEx 如果系统区域设置与字体语言不匹配,则返回英语字样名称。

例子

有关示例,请参阅 枚举已安装字体

注意

wingdi.h 标头将 EnumFontFamilies 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 wingdi.h (包括 Windows.h)
Gdi32.lib
DLL Gdi32.dll

另请参阅

EnumFontFamProc

EnumFontFamiliesEx

EnumFonts

字体和文本功能

字体和文本概述