描述
CreateScalableFontResource函数创建可缩放字体的字体资源文件。
C++ 语法
BOOL CreateScalableFontResource( __in DWORD fdwHidden, __in LPCTSTR lpszFontRes, __in LPCTSTR lpszFontFile, __in LPCTSTR lpszCurrentPath ); |
PowerBASIC 语法
FUNCTION CreateScalableFontResourceA ( _ BYVAL fdwHidden AS DWORD, _ BYREF lpszFontRes AS ASCIIZ, _ BYREF lpszFontFile AS ASCIIZ, _ BYREF lpszCurrentPath AS ASCIIZ _ ) AS LONG |
Unicode版本:
FUNCTION CreateScalableFontResourceW ( _ BYVAL fdwHidden AS DWORD, _ BYREF lpszFontRes AS WSTRINGZ, _ BYREF lpszFontFile AS WSTRINGZ, _ BYREF lpszCurrentPath AS WSTRINGZ _ ) AS LONG |
参数
fdwHidden
[in]指定字体是否为只读字体。此参数可以是以下值之一。
值 |
含义 |
0 |
字体具有读写权限。 |
1 |
该字体具有只读权限,并且应该隐藏在系统中的其他应用程序中。设置此标志时,该字体不会被EnumFonts或EnumFontFamilies功能枚举。 |
lpszFontRes
[in]指向要终止字符串的字符串,指定要创建的字体资源文件的名称。如果此参数指定了现有的字体资源文件,则该函数将失败。
lpszFontFile
[in]指向以null结尾的字符串的指针,指定此函数用于创建字体资源文件的可缩放字体文件的名称。
lpszCurrentPath
[in]指向指定可缩放字体文件路径的以空值终止的字符串的指针。
返回值
如果函数成功,返回值不为零。
如果函数失败,返回值为零。
Windows NT / 2000 / XP / Vista / Windows 7:要获取扩展错误信息,请调用GetLastError.如果lpszFontRes指定了一个现有的字体文件,GetLastError返回ERROR_FILE_EXISTS。
备注
CreateScalableFontResource功能由安装TrueType字体的应用程序使用。应用程序使用CreateScalableFontResource函数创建字体资源文件(通常使用.fot文件扩展名),然后使用AddFontResource函数来安装字体。TrueType字体文件(通常带有.ttf文件扩展名)必须位于要由AddFontResource函数使用的Windows目录的“系统”子目录中。
CreateScalableFontResource功能目前仅支持TrueType技术可缩放字体。
当lpszFontFile参数仅指定文件名和扩展名时,lpszCurrentPath参数必须指定路径。当lpszFontFile参数指定完整路径时,lpszCurrentPath参数必须为NULL或指向NULL的指针。
在lpszFontFile参数中仅指定文件名和扩展名,并且lpszCurrentPath参数中指定路径时,lpszFontFile中的字符串将作为属于此资源的.ttf文件复制到.fot文件中。 。当调用AddFontResource函数时,操作系统假定.ttf文件已经被复制到系统目录中(或者在网络安装的情况下)被复制到主Windows目录中。当调用CreateScalableFontResource函数时,.ttf文件不需要在此目录中,因为lpszCurrentPath参数包含目录信息。以此方式创建的资源不包含绝对路径信息,可用于任何安装。
当在lpszFontFile参数中指定路径并在lpszCurrentPath参数中指定NULL时,lpszFontFile中的字符串将复制到.fot文件中。在这种情况下,当AddFontResource函数被调用时,当调用CreateScalableFontResource函数时,.ttf文件必须位于lpszFontFile参数中指定的位置;不需要lpszCurrentPath参数。以此方式创建的资源包含对路径和驱动器的绝对引用,如果将.ttf文件移动到其他位置,则不起作用。
Windows 95/98 / Me:Microsoft Layer for Unicode支持CreateScalableFontResourceW.
引用文件 #INCLUDE Once
WinGdi.inc(包括Windows.inc)