scriptGetLogicalWidths 函数 (usp10.h)
将特定字体的字形 前移宽度 转换为逻辑宽度。
语法
HRESULT ScriptGetLogicalWidths(
[in] const SCRIPT_ANALYSIS *psa,
[in] int cChars,
[in] int cGlyphs,
[in] const int *piGlyphWidth,
[in] const WORD *pwLogClust,
[in] const SCRIPT_VISATTR *psva,
[out] int *piDx
);
参数
[in] psa
指向 SCRIPT_ANALYSIS 结构的指针。
[in] cChars
运行中的逻辑码位计数。
[in] cGlyphs
运行中的字形计数。
[in] piGlyphWidth
指向字形前移宽度数组的指针。
[in] pwLogClust
指向逻辑群集数组的指针。
[in] psva
指向定义视觉对象属性 的SCRIPT_VISATTR 结构的指针。
[out] piDx
指向逻辑宽度数组的指针。
返回值
当前在所有情况下都返回S_OK。
注解
此函数可用于以与字体无关的方式记录宽度。 它将为特定字体计算的字形前移宽度转换为逻辑宽度,每个码位一个,顺序与码位相同。 如果使用相同的字体在不同的设备上显示同一字符串,则可以使用 ScriptApplyLogicalWidth 应用逻辑宽度来近似原始位置。 此机制在实现打印预览时非常有用。 在预览屏幕上,请务必匹配最终打印结果的布局和位置。
注意 连字字形宽度在它们所表示的字符之间均匀划分。
重要从 Windows 8 开始:若要保持在 Windows 7 上运行的能力,使用 Uniscribe 的模块必须在其库列表中指定 gdi32.lib 之前的 Usp10.lib。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | usp10.h |
Library | Usp10.lib |
DLL | Usp10.dll |
可再发行组件 | Windows Me/98/95 上的 Internet Explorer 5 或更高版本 |