scriptGetFontLanguageTags 函数 (usp10.h)
检索可用于指定项且受 OpenType 处理的指定脚本标记支持的语言标记列表。 从指定设备上下文或缓存中的字体检索构成列表的标记。
语法
HRESULT ScriptGetFontLanguageTags(
[in, optional] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in, optional] SCRIPT_ANALYSIS *psa,
[in] OPENTYPE_TAG tagScript,
[in] int cMaxTags,
[out] OPENTYPE_TAG *pLangsysTags,
[out] int *pcTags
);
参数
[in, optional] hdc
设备上下文的句柄。 有关详细信息,请参阅 缓存。
[in, out] psc
指向标识脚本缓存 的SCRIPT_CACHE 结构的指针。
[in, optional] psa
指向从先前调用 ScriptItemizeOpenType 获取的 SCRIPT_ANALYSIS 结构的指针。 此参数标识整形引擎,以便可以检索相应字体和脚本的字体语言标记。
或者,应用程序可以将此参数设置为 NULL 以检索未筛选的结果。
[in] tagScript
一个OPENTYPE_TAG结构,用于定义为其请求关联语言标记列表的脚本标记。
[in] cMaxTags
pLangSysTags 指定的数组的长度。
[out] pLangsysTags
指向缓冲区的指针,此函数在其中检索标识与输入条件匹配的语言标记 的OPENTYPE_TAG 结构的数组。
[out] pcTags
指向语言标记数组中元素数的指针。
返回值
如果成功,则返回 0。 如果函数不成功,则返回非零 HRESULT 值。 应用程序可以使用 SUCCEEDED 和 FAILED 宏测试返回值。
如果匹配标记数超过 cMaxTags,则函数将失败并E_OUTOFMEMORY。 应用程序可以尝试使用较大的缓冲区再次调用 。
注解
虽然正式声明为 ULONG 类型, 但 OPENTYPE_TAG 结构包含一个 4 字节数组,其中包含空间 A-Z 或 a-z 的四个 8 位 ASCII 值。 例如,罗马尼亚语、乌尔都语和波斯语的语言标记分别为“ROM”、“URD”和“FAR”。 请注意,每个标记以空格结尾。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | usp10.h |
Library | Usp10.lib |
DLL | Usp10.dll |
可再发行组件 | 在 Windows XP 上 Usp10.dll 版本 1.600 或更高版本 |