GetFontData函数检索TrueType字体的字体度量数据。
DWORD GetFontData(
HDC 【HDC】, | //设备上下文的句柄 |
DWORD 【dwTable】, | //度量表查询 |
DWORD 【dwOffset】, | // offset into table is Quaried |
LPVOID 【lpvBuffer】, | //返回数据的缓冲区地址 |
DWORD 【cbData】 | //要查询的数据长度 |
); |
参数
【HDC】
标识设备上下文。
【dwTable】
指定要从中检索字体数据的字体度量表的名称。此参数可以标识由Microsoft Corporation发布的TrueType字体文件规范中记录的度量表之一。如果此参数为零,则从字体文件的开头开始检索信息。
【dwOffset】
指定从字体度量表开始到函数应开始检索信息的位置的偏移量。如果此参数为零,则从【dwTable】参数指定的表的开始处检索信息。如果该值大于或等于表的大小,则会发生错误。
【lpvBuffer】
指向缓冲区以接收字体信息。如果此参数为NULL,该函数将返回字体数据所需的缓冲区大小。
【cbData】
指定要检索的信息的长度(以字节为单位)。如果此参数为零,GetFontData返回【dwTable】参数中指定的数据大小。
返回值
如果函数成功,则返回值是返回的字节数。
如果函数失败,返回值为GDI_ERROR。
备注
应用程序有时可以使用GetFontData函数将文本保存为TrueType字体。为此,应用程序通过检查OUTLINETEXTMETRIC结构的字体嵌入位成员来确定是否可以嵌入字体。如果设置了字体嵌入位的位1,则不允许嵌入字体。如果位1清零,则可以嵌入字体。如果设置了位2,则嵌入是只读的。如果允许嵌入,应用程序可以检索整个字体文件,为【dwTable】,【dwOffset】和【cbData】参数指定零。
如果应用程序尝试使用此函数来检索非TrueType字体的信息,则会发生错误。
也可以看看