scriptBreak 函数 (usp10.h)

检索用于确定换行符的信息。

语法

HRESULT ScriptBreak(
  [in]  const WCHAR           *pwcChars,
  [in]  int                   cChars,
  [in]  const SCRIPT_ANALYSIS *psa,
  [out] SCRIPT_LOGATTR        *psla
);

参数

[in] pwcChars

指向要处理的 Unicode 字符的指针。

[in] cChars

要处理的 Unicode 字符数。

[in] psa

指向从先前调用 ScriptItemize 中获取的 SCRIPT_ANALYSIS 结构的指针。

[out] psla

指向缓冲区的指针,此函数在其中检索字符属性作为 SCRIPT_LOGATTR 结构。

返回值

如果成功,则返回 0。 如果函数不成功,则返回非零 HRESULT 值。 应用程序可以使用 SUCCEEDEDFAILED 宏测试返回值。

注解

有关通常调用此函数的上下文的讨论,请参阅 使用 Uniscribe 显示文本

此函数不需要设备上下文,也不执行字形调整。

此函数检索 SCRIPT_LOGATTR结构数组 中项的光标移动和格式分隔符位置。 若要在单个单词中正确支持混合格式,对 ScriptBreak 的调用应传递 ScriptItemize 检索到的整个项,而不是运行更精细的格式设置。

SCRIPT_LOGATTR 结构标识有效的插入点位置和换行符。 fCharStop 成员指定一个标志,用于标记传统上限制在群集内移动的脚本的群集边界。 也可以通过检查 ScriptShape 检索的逻辑群集信息来推断相同的边界。 但是, ScriptBreak 的实现速度要快得多,并且不需要准备设备上下文。

SCRIPT_LOGATTR的 fWordStopfSoftBreakfWhiteSpace 成员指定的标志只能通过 ScriptBreak 使用

大多数识别无效序列的整形引擎都设置了 ScriptBreakSCRIPT_LOGATTRfInvalid 成员指示的标志。 SCRIPT_PROPERTIESfInvalidLogAttr 成员标识适用的脚本。

重要从 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 或更高版本

另请参阅

使用 Uniscribe 显示文本

SCRIPT_ANALYSIS

SCRIPT_LOGATTR

ScriptItemize

ScriptShape

Uniscribe

Uniscribe 函数