iTextRange2::BuildUpMath 方法 (tom.h)
将区域中的线性格式数学转换为内置形式,或修改当前生成窗体。
语法
HRESULT BuildUpMath(
[in] long Flags
);
参数
[in] Flags
类型: long
以下标志的组合。
tom化Formula
tomHaveDelimiter
tomMathAlphabetics
tomMathApplyTemplate
tomMathArabicAlphabetics
tomMathAutoCorrect
tomMathAutoCorrectExt
tomMathAutoCorrectOpPairs
tomMathBackspace
tomMathBuildDown
tomMathBuildDownOutermost
tomMathBuildUpArgOrZone
tomMathBuildUpRecurse
tomMathChangeMask
tomMathCollapseSel
tomMathDeleteArg
tomMathDeleteArg1
tomMathDeleteArg2
tomMathDeleteCol
tomMathDeleteRow
tomMathEnter
tomMathInsColAfter
tomMathInsColBefore
tomMathInsRowAfter
tomMathInsRowBefore
tomMathMakeFracLinear
tomMathMakeFracSlashed
tomMathMakeFracStacked
tomMathMakeLeftSubSup
tomMathMakeSubSup
tomMathRemoveOutermost
tomMathRichEdit
tomMathShiftTab
tomMathSingleChar
tomMathSubscript
tomMathSuperscript
tomMathTab
tomNeedTermOp
tomPlain
tomShowEmptyArgPlaceholders
tomTeX
返回值
类型: HRESULT
如果该方法成功,则返回 NOERROR。 否则,将返回 HRESULT 错误代码。
注解
如果在非生成范围上调用 ITextRange2::BuildUpMath 方法,则该方法检查文本中的数学斜体转换 (是否) 指定了 tomMathAlphabetics,如果) 指定了 tomMathAutoCorrect 或 tomMathAutoCorrectExt,则 (数学自动更正转换。 然后, 方法尝试生成所选文本。 如果成功,该方法会将区域中的上一个文本替换为内置文本。 如果方法对区域进行任何更改,则函数返回 NOERROR ,范围选择结果。 如果该方法确实更改了范围,它将返回 S_FALSE 或组件对象模型 (COM) 错误代码。
如果在退化范围上调用 ITextRange2::BuildUpMath 方法,则 BuildUpMath 方法会将该区域视为紧跟在最后一个字符输入之后 (IP) 插入点。 如果) 指定 了 tomMathAlphabetics ,则该方法将该字符(可能与前面的一些字符一起)转换为数学斜体 (;如果) 指定 了 tomMathAutoCorrect ,则 (内部数学自动更正;如果) 指定 了 tomMathAutoCorrectOpPairs ,则 (某些运算符对。 如果 IP 位于参数内,该方法将扫描从 IP 到数学对象参数开头的文本范围;否则, 方法扫描到当前数学区域的开头。 扫描由硬回车符或软段落结尾标记终止,因为数学区域由这些标记终止。 从数学对象参数或数学区域的开头向前扫描会绕过没有机会生成的文本。 如果扫描到达原始条目 IP,可能会出现以下结果之一:
- 如果方法进行了任何更改,该函数将返回 NOERROR ,并使用更改后的文本更新的区域。
- 如果该方法未做任何更改,该函数将返回 S_FALSE ,并保持区域不变。
如果此完整生成尝试失败,BuildUpMath 方法会为紧靠 IP 前面的表达式执行部分构建检查。 如果此操作成功,该方法将返回 NOERROR ,并且该区域包含要由生成文本替换的线性文本。
如果完全和部分构建尝试失败,函数将返回,如前面所述,如果未找到任何构建文本。 如果 任一 接口指针为 NULL) 且E_OUTOFMEMORY,则其他可能的返回值包括 E_INVALIDARG (。
应为公式自动生成设置 tomNeedTermOp 标志,除非发生了删除终止空白的自动更正。 当用户键入空白以强制自动更正时,更正文本(如 \alpha)时,可能会发生自动更正。
要求
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | tom.h |
DLL | Msftedit.dll |