Verarbeiten komplexer Skripts

Eine Anwendung kann eine von zwei Methoden verwenden, um die Textausrichtung bereitzustellen. Für eine einfache Implementierung der mehrsprachigen Begründung sollte die Anwendung scriptrechtnennen. Er generiert das Delta-DX-Array, indem er Kashida, den Abstand zwischen den Wort interwörtern und den intercharacter-Abstand berücksichtigt. Für eine anspruchsvollere Begründung kann die Anwendung ein aktualisiertes Delta-DX-Array generieren, das das eigene Sprachwissen und die von scriptshape abgerufenen Informationen im Skript " _ visattr "-Array verwendet.

Es sollte ein Ausrichtungstyp oder ein Kashida eingefügt werden, wenn er vom Benutzer definierten Member von Skript " _ visattr" identifiziert wird Bei der Durchführung der Zeichen übergreifenden Ausrichtung sollte die Anwendung zusätzlichen Leerraum erst einfügen, nachdem Symbole mit dem Zeichen "Skript rechtfertigen" gekennzeichnet wurden _ _ .

Die Anwendung führt die Platzierung von Caretzeichen und Treffer Tests mithilfe von scriptxeincp und scriptcptoxdurch. Weitere Informationen finden Sie unter Verwalten der Platzierung von Caretzeichen und Treffer Tests.

Um breiten auf Schriftart unabhängige Weise zu erhalten, ruft die Anwendung scriptgetlogicalbreitenauf. Durch die Übergabe der logischen Breite an scriptapplylogicalwidthkann ein TextBlock in denselben Grenzen mit akzepziellem Verlust der Qualität erneut angezeigt werden, auch wenn die ursprüngliche Schriftart nicht verfügbar ist. Es generiert ein Array von Symbol breiten (voraus Breite), die für die Übergabe an scripttextoutgeeignet sind. Das Aufzeichnen und erneute Anwenden von Informationen zur vorab Breite auf Schriftart unabhängige Weise kann in Situationen nützlich sein, in denen ein Anwendungs definiertes Format vorliegt.

Hinweis

Metadateien unterstützen keine Glyphe-Indizes. Zum Schreiben in eine erweiterte Metadatei sollte die Anwendung exttextout verwenden und die logischen Zeichen direkt schreiben. Mithilfe dieses Mechanismus werden das Generieren und Platzieren von Symbolen erst nach dem Wiedergeben des Texts angezeigt.

Zum Abrufen der spezifischen Symbole, die für die Standard-, Leerzeichen, Kashida usw. für die aktuelle Schriftart verwendet werden, sollte die Anwendung scriptgetfontpropertiesaufrufen. Wenn Sie bestimmen möchten, welche Zeichen in einer Testlauf von der ausgewählten Schriftart unterstützt werden, ruft die Anwendung scriptgetcmapauf. Zeichen, die nicht verfügbar sind, haben das Standard Symbol im Symbol Puffer. Beachten Sie, dass diese Methode fehlschlägt, wenn eine Schriftart ein Zeichen mit einer Kombination von Symbolen anstelle eines einzelnen Symbols rendert. Beispielsweise 00c9; Der lateinische Großbuchstabe E mit dem akuten kann mithilfe eines Großbuchstaben und eines akuten Symbols gerendert werden. Zum Ermitteln der Schriftart Unterstützung für eine Zeichenfolge, die diese Arten von Code Punkten enthält, kann die Anwendung scriptshapeaufruft. Weitere Informationen finden Sie unter verwendenvon Strukturierungs Modulen.

Die scriptcachegetheight -Funktion gibt die Höhe der Schriftart aus dem Schriftart Cache zurück. Scriptgetproperties enthält Informationen zur speziellen Verarbeitung, die für alle Skripts erforderlich ist, die durch das Skript indiziert werden. Sie enthält beispielsweise die dem Skript zugeordnete primäre Sprache, Daten, die angeben, ob das Skript numerisch ist, und Daten, die angeben, ob das Skript ein komplexes Skript ist.

Scriptgetglyphabcwidth gibt die ABC-Breite eines bestimmten Symbols zurück, was für das Zeichnen von Symbol Diagrammen nützlich sein kann. Es sollte jedoch nicht für die normale Formatierung komplexer Skript Text verwendet werden.

Verwenden von uniscri