鱼C论坛

 找回密码
 立即注册
查看: 2280|回复: 0

[API档案] EnumFontFamProc

[复制链接]
发表于 2016-7-28 23:23:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
注:本文档由 CET-6-WPW 翻译,小甲鱼校对。

原文链接 -> 传送门

函数功能:

EnumFontFamProc 函数是应用程序定义的回调函数,和 EnumFontFamilies 函数一起使用。它接收描述可用字体的数据。FONTENUMPROC 类型定义此回调函数的指针。EnumFontFamProc 函数是作为应用程序自定义的函数名称的占位符。

注意:EnumFontFamilies 函数只供与 16 位版本的 Windows 的兼容性。新应用程序应使用 EnumFontFamiliesEx 函数。


API 函数原型:

注释:_In_ 说明该参数是输入的。
  1. int CALLBACK EnumFontFamProc(
  2.   _In_ ENUMLOGFONT   *lpelf,
  3.   _In_ NEWTEXTMETRIC *lpntm,
  4.   _In_ DWORD         FontType,
  5.   _In_ LPARAM        lParam
  6. );
复制代码


参数解析:

参数 含义
lpelf1. 指向包含有关逻辑属性的字体信息的 ENUMLOGFONT 结构的指针。该结构是本地定义的。

2. 该参数也可以指向一个 ENUMLOGFONTEXDV 结构
lpntm1. 如果该字体为 TrueType 字体,那么这个参数是指向 NEWTEXTMETRIC 结构的指针,该结构包含字体的物理属性的信息。如果字体不是 TrueType 字体,则此参数是指向 TEXTMETRIC 结构的指针

2. 该参数也可以指向一个 ENUMTEXTMETRIC 结构
FontType指定字体的类型,此参数可以是下列值的组合:
  • DEVICE_FONTTYPE
  • RASTER_FONTTYPE
  • TRUETYPE_FONTTYPE
lParam指向由 EnumFontFamilies 函数传递来的应用程序自定义数据的指针


返回值:

1. 返回值必须是一个非 0 的值,以继续枚举;

2. 若要停止枚举,返回值必须为 0。


备注:

1. 应用程序必须注册此回调函数,通过将它的地址传递给 EnumFontFamilies 函数来完成注册。

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

3. RASTER_FONTTYPE,DEVICE_FONTTYPE 和 TRUETYPE_FONTTYPE 可用与操作符(&)连接起来,用于决定字体的类型。如果 RASTER_FONTTYPE 位被设置,则该字体是一种光栅字体。如果 TRUETYPE_FONTTYPE 位被设置,该字体是一种 TrueType 字体。如果上述两位都未被设置,则该字体是一种向量字体。当一种设备(如激光打印机)支持下载 TrueType 字体或该字体是一种驻留设备的字体,则 DEVICE_FONTTYPE 位被设置,当设备是一种显示设备、点阵打印机或其他光栅设备,则该位为 0。应用程序也可用 DEVICE_FONTTYPE 来区别图形设备接口(GDI)提供的光栅字体和设备提供的字体。GDI 可以为 GDI 提供的光栅字体模拟粗体、斜体、下划线和删除线属性,但却不支持设备提供的字体。


需求:

Minimum supported client Windows 2000 专业版 [仅桌面应用程序]
Minimum supported server Windows 2000 服务器版 [仅桌面应用程序]
Header Wingdi.h (包含于 Windows.h)
Unicode and ANSI namesEnumFontFamProcW (Unicode) 和 EnumFontFamProcA (ANSI)


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 22:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表