ITextRange2::BuildUpMath 方法 (tom.h)

將範圍中的線性格式數學轉換成內建表單,或修改目前的內建表單。

語法

HRESULT BuildUpMath(
  [in] long Flags
);

參數

[in] Flags

類型: long

下列旗標的組合。

tomParaFormula

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) 和數學自動校正轉換 (如果指定 tomMathAutoCorrecttomMathAutoCorrectExt) 。 然後,方法會嘗試建置選取的文字。 如果成功,方法會將範圍中的上一個文字取代為內建文字。 如果方法對範圍進行任何變更,函式會傳回 NOERROR ,而範圍會選取結果。 如果方法確實變更範圍,它會傳回 S_FALSE 或元件物件模型 (COM) 錯誤碼。

如果在變質範圍上呼叫 ITextRange2::BuildUpMath 方法, BuildUpMath 方法會將範圍視為插入點, (IP) 緊接在最後一個字元輸入之後。 如果指定 tomMathAlphabetics) ,方法會將該字元連同一些先前字元一起轉換成數學斜體 (,如果指定 tomMathAutoCorrect () 、否定運算子,以及指定 tomMathAutoCorrectOpPairs (某些運算子組) 。 如果 IP 位於引數內,此方法會掃描從 IP 到數學物件引數開頭的文字範圍;否則,方法會掃描到目前數學區域的開頭。 掃描會由硬式歸位字元或軟式段落結束記號終止,因為數學區域會由這些標記終止。 從數學物件引數開頭開始的掃描,或數學區域會略過沒有建置機會的文字。 如果掃描達到原始專案 IP,可能會發生下列其中一個結果:

  • 如果方法進行任何變更,函式會傳回 NOERROR ,並使用變更的文字更新範圍。
  • 如果方法未進行任何變更,函式會傳回 S_FALSE ,並將範圍保留不變。
如果掃描找到可能建置的文字, BuildUpMath 方法會嘗試將文字建置到插入點。 如果成功,此方法會傳回 NOERROR,而且範圍會以對應的內建文字進行更新。

如果這個完整建置嘗試失敗, BuildUpMath 方法會針對 IP 前面的運算式執行部分建置檢查。 如果成功,此方法會傳回 NOERROR ,而範圍包含要由內建文字取代的線性文字。

如果完整和部分建置嘗試失敗,函式會傳回,如先前針對找不到建置文字的案例所述。 如果任一介面指標為Null) 和E_OUTOFMEMORY,則其他可能的傳回值包括E_INVALIDARG (

您應該為公式自動建置設定 tomNeedTermOp 旗標,除非發生刪除終止空白的自動校正。 當使用者輸入空白以強制自動校正時,更正類似 \Alpha 的文字時,可能會發生自動校正。

需求

   
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 tom.h
Dll Msftedit.dll

另請參閱

ITextRange2

ITextRange2::Linearize