分享好友 天南地北首页 网站导航

什么是EnumFontFamProc

网友 2023-09-16 16:07 · 头闻号教育培训

最佳答案:

EnumFontFamProc是由应用程序定义的与函数EnumFontFamilies一起使用的回调函数,它接收用于描述可用字体的数据。

详情介绍

EnumFontFamProc是由应用程序定义的与函数EnumFontFamilies一起使用的回调函数,它接收用于描述可用字体的数据。

外文名
EnumFontFamProc
接收用于
描述可用字体的数据
类型
FONTENUMPROC
函数的名字的占位符

EnumFontFamProc函数功能

类型FONTENUMPROC定义了一个指向此回调函数的指针,EnumFontFamProc是应用程序定义的函数的名字的占位符。

EnumFontFamProc函数原型

int CALLBACK EnumFontFamProc(ENUMLOGFONT FAR *lpelf, NEWTEXTMETRIC FAR *lpntm, int FontType, LPARAM lParam);

EnumFontFamProc参数

lpelf:指向结构ENUMLOGFONT的指针,该结构包含字体的逻辑属性。该结构是局部定义的。

lpntm:指向结构NEWTEXTMETRIC的指针,该结构包含TrueType字体的物理属性。如果该字体不是TrueType字体,此参数为指向结构TEXTMETRIC的指针。

FontType:指定字体的类型,此参数可以是下列值的组合:

DEVICE_FONTTYPE, RASTER_FONTTYPE, TRUETYPE_FONTTYPE。

lParam:指向由函数EnumFontFamilies传来的应用程序定义的数据的指针。

EnumFontFamProc返回值

要继续列举,返回值必须是非零值;要停止列举,返回值必须为0。

EnumFontFamProc其他信息

应用程序必须将此回调函数的地址传给EnumFontFamilies以将函数注册。

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

Windows CE:字体的物理属性总是保存在TEXTMETRIC结构中。

Windows CE版本1.0不支持TrueType字体。在该版本中,参数FontType的值始终是RASTER_FONTTYPE。

在Windows CE版本2.0,FontType可依赖于Windows CE平台取值为RASTER_FONTTYPE或TRUETYPE_FONTTYPE,任何给定的Windows CE平台只支持光栅字体和TrueType字体其中之一,字体类型(光栅或TrueType)是在系统设计时选择的,应用程序不能修改。

免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报

举报
反对 0
打赏 0
更多相关文章

收藏

点赞