ITextRange2::BuildUpMath-Methode (tom.h)
Konvertiert die lineare Mathematik in einem Bereich in ein integriertes Formular oder ändert das aktuell erstellte Formular.
Syntax
HRESULT BuildUpMath(
[in] long Flags
);
Parameter
[in] Flags
Typ: long
Eine Kombination der folgenden Flags.
tomChemicalFormula
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
Rückgabewert
Typ: HRESULT
Wenn die Methode erfolgreich ist, gibt sie NOERROR zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Wenn die ITextRange2::BuildUpMath-Methode in einem nicht degeneraten Bereich aufgerufen wird, überprüft die Methode den Text auf kursiv-mathematische Konvertierungen (wenn tomMathAlphabetics angegeben ist) und mathematische Autokorrekturkonvertierungen (wenn tomMathAutoCorrect oder tomMathAutoCorrectExt angegeben ist). Anschließend versucht die Methode, den ausgewählten Text zu erstellen. Bei erfolgreicher Ausführung ersetzt die Methode den vorherigen Text im Bereich durch den aufgebauten Text. Wenn die -Methode Änderungen am Bereich vornimmt, gibt die Funktion NOERROR zurück, und der Bereich wählt das Ergebnis aus. Wenn die Methode den Bereich ändert, gibt sie S_FALSE oder einen COM-Fehlercode (Component Object Model) zurück.
Wenn die ITextRange2::BuildUpMath-Methode in einem degeneraten Bereich aufgerufen wird, behandelt die BuildUpMath-Methode den Bereich als Einfügemarke (IP), die unmittelbar nach der letzten Zeicheneingabe folgt. Die -Methode konvertiert dieses Zeichen, möglicherweise zusammen mit einigen vorherigen Zeichen, in kursiv (wenn tomMathAlphabetics angegeben ist), in die interne mathematische Autokorrektur (wenn tomMathAutoCorrect angegeben ist), negierte Operatoren und einige Operatorpaare (wenn tomMathAutoCorrectOpPairs angegeben ist). Wenn sich die IP in einem Argument befindet, scannt die Methode einen Textbereich von der IP zurück bis zum Anfang eines mathematischen Objektarguments. Andernfalls scannt die Methode bis zum Anfang der aktuellen mathematischen Zone. Der Scan wird durch einen harten Wagenrücklauf oder ein weiches Absatzende beendet, da mathematische Zonen durch diese Markierungen beendet werden. Eine Überprüfung vom Anfang des Mathematischen Objektarguments oder der Mathematischen Zone ausgehende Überprüfung umgeht Text, der keine Chance hat, aufgebaut zu werden. Wenn der Scan die ursprüngliche Eintrags-IP erreicht, kann eines der folgenden Ergebnisse auftreten:
- Wenn die Methode Änderungen vorgenommen hat, gibt die Funktion NOERROR zurück, und der Bereich wurde mit dem geänderten Text aktualisiert.
- Wenn die Methode keine Änderungen vorgenommen hat, gibt die Funktion S_FALSE zurück und lässt den Bereich unverändert.
Wenn dieser vollständige Build-Up-Versuch fehlschlägt, führt die BuildUpMath-Methode eine teilweise Buildupprüfung für den Ausdruck vor der IP durch. Wenn dies erfolgreich ist, gibt die Methode NOERROR zurück, und der Bereich enthält den linearen Text, der durch den aufgebauten Text ersetzt werden soll.
Wenn vollständige und teilweise Buildversuche fehlschlagen, wird die Funktion wie zuvor beschrieben für die Fälle zurückgegeben, in denen kein Buildtext gefunden wurde. Andere mögliche Rückgabewerte sind E_INVALIDARG (wenn ein Schnittstellenzeiger NULL ist) und E_OUTOFMEMORY.
Sie sollten das tomNeedTermOp-Flag für den automatischen Formelaufbau festlegen, es sei denn, es wurde eine Autokorrektur durchgeführt, die das beendende leer löscht. Die Autokorrektur kann beim Korrigieren von Text wie \alpha auftreten, wenn der Benutzer ein Leerzeichen eingibt, um die Autokorrektur zu erzwingen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | tom.h |
DLL | Msftedit.dll |