NumericShaper Klasse

Definition

Die NumericShaper Klasse wird verwendet, um lateinisch-1 (europäische) Ziffern in andere Unicode-Dezimalziffern zu konvertieren.

[Android.Runtime.Register("java/awt/font/NumericShaper", DoNotGenerateAcw=true)]
public sealed class NumericShaper : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/awt/font/NumericShaper", DoNotGenerateAcw=true)>]
type NumericShaper = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Vererbung
NumericShaper
Attribute
Implementiert

Hinweise

Die NumericShaper Klasse wird verwendet, um lateinisch-1 (europäische) Ziffern in andere Unicode-Dezimalziffern zu konvertieren. Benutzer dieser Klasse werden in erster Linie Personen sein, die Daten mit nationalen Ziffern-Shapes präsentieren möchten, aber es ist praktischer, die Daten intern mithilfe von Lateinischen-1 (europäischen) Ziffern darzustellen. Dadurch wird das veraltete Numerische Shape-Selektorzeichen (U+206E) nicht interpretiert.

Instanzen von NumericShaper werden in der Regel als Attribute auf Text mit dem TextAttribute#NUMERIC_SHAPING NUMERIC_SHAPING Attribut der TextAttribute Klasse angewendet. Beispielsweise bewirkt dieser Codeausschnitt, TextLayout dass europäische Ziffern in einem arabischen Kontext arabisch dargestellt werden:<br><blockquote>

Map map = new HashMap();
            map.put(TextAttribute.NUMERIC_SHAPING,
                NumericShaper.getContextualShaper(NumericShaper.ARABIC));
            FontRenderContext frc = ...;
            TextLayout layout = new TextLayout(text, map, frc);
            layout.draw(g2d, x, y);

</blockquote><br> Es ist auch möglich, eine numerische Gestaltung explizit mithilfe von Instanzen von NumericShaperauszuführen, wie dieser Codeausschnitt veranschaulicht:<br><blockquote>

char[] text = ...;
            // shape all EUROPEAN digits (except zero) to ARABIC digits
            NumericShaper shaper = NumericShaper.getShaper(NumericShaper.ARABIC);
            shaper.shape(text, start, count);

            // shape European digits to ARABIC digits if preceding text is Arabic, or
            // shape European digits to TAMIL digits if preceding text is Tamil, or
            // leave European digits alone if there is no preceding text, or
            // preceding text is neither Arabic nor Tamil
            NumericShaper shaper =
                NumericShaper.getContextualShaper(NumericShaper.ARABIC |
                                                    NumericShaper.TAMIL,
                                                  NumericShaper.EUROPEAN);
            shaper.shape(text, start, count);

</blockquote>

<b>Bitmaske- und Enumerationsbasierte Unicode-Bereiche</b>

Diese Klasse unterstützt zwei verschiedene Programmierschnittstellen, um Unicode-Bereiche für skriptspezifische Ziffern darzustellen: Bitmaskenbasierte, z #ARABIC NumericShaper.ARABIC. B. , und Enumerationsbasierte, z NumericShaper.Range#ARABIC. B. . . Mehrere Bereiche können durch ORing-Bitformatbasierte Konstanten angegeben werden, z. B.: <Blockquote>

NumericShaper.ARABIC | NumericShaper.TAMIL

</blockquote> oder Erstellen einer Set mit den NumericShaper.Range Konstanten, z. B.: <Blockquote>

EnumSet.of(NumericShaper.Scirpt.ARABIC, NumericShaper.Range.TAMIL)

</blockquote> The enum-based ranges are a super set of the bit mask-based ones.

Wenn die beiden Schnittstellen gemischt sind (einschließlich Serialisierung), werden Unicode-Bereichswerte ihren Gegenstücken zugeordnet, wenn eine solche Zuordnung möglich ist, z NumericShaper.Range.ARABIC . B. von/zu NumericShaper.ARABIC. Wenn nicht verwendbare Bereichswerte angegeben werden, z NumericShaper.Range.BALINESE. B. werden diese Bereiche ignoriert.

<b>Dezimalziffernrang</b>

Ein Unicode-Bereich kann mehrere Dezimalziffern enthalten. Wenn für denselben Unicode-Bereich mehrere Dezimalstellen festgelegt werden, hat einer der Sätze vorrang wie folgt.

<Table border=1 cellspacing=3 cellpadding=0 summary="NumericShaper constants precedence."><tr>th class="TableHeadingColor"<Unicode Range>/th th<>class="TableHeadingColor"<> ConstantsNumericShaper/th<>class="TableHeadingColor"<Precedence>/th<>/tr<>td<>rowspan="2"<Arabic>/td<>td<>NumericShaper#ARABIC NumericShaper.ARABICbr<>NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC/td td<><>NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC/td<>/tr<>td<><>NumericShaper.Range#ARABICbr/td br<>NumericShaper.Range#EASTERN_ARABIC/td<><td>NumericShaper.Range#EASTERN_ARABIC</td></tr td><><>Tai Tham</td td><>NumericShaper.Range#TAI_THAM_HORA<br>NumericShaper.Range#TAI_THAM_THAM</td td td/td></td>NumericShaper.Range#TAI_THAM_THAM<></tr></table>

In 1.4 hinzugefügt.

Java-Dokumentation für java.awt.font.NumericShaper.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Felder

Name Beschreibung
AllRanges
Veraltet.

Identifiziert alle Bereiche für die vollständige kontextbezogene Gestaltung.

Arabic
Veraltet.

Identifiziert den ARABISCHEn Bereich und die Dezimalbasis.

Bengali
Veraltet.

Identifiziert den BENGALI-Bereich und die Dezimalbasis.

Devanagari
Veraltet.

Identifiziert den DEVANAGARI-Bereich und die Dezimalbasis.

EasternArabic
Veraltet.

Identifiziert den ARABISCHEn Bereich und ARABIC_EXTENDED Dezimalbasis.

Ethiopic
Veraltet.

Identifiziert den ETHIOPIC-Bereich und die Dezimalbasis.

European
Veraltet.

Identifiziert den lateinisch-1 (europäischen) und erweiterten Bereich sowie lateinisch-1 (europäische) Dezimalbasis.

Gujarati
Veraltet.

Identifiziert den GUJARATI-Bereich und die Dezimalbasis.

Gurmukhi
Veraltet.

Identifiziert den GURMUKHI-Bereich und die Dezimalbasis.

Kannada
Veraltet.

Identifiziert den KANNADA-Bereich und die Dezimalbasis.

Khmer
Veraltet.

Identifiziert den KHMER-Bereich und die Dezimalbasis.

Lao
Veraltet.

Identifiziert den LAO-Bereich und die Dezimalbasis.

Malayalam
Veraltet.

Identifiziert den MALAYALAM-Bereich und die Dezimalbasis.

Mongolian
Veraltet.

Identifiziert den MONGOLN-Bereich und die Dezimalbasis.

Myanmar
Veraltet.

Identifiziert den MYANMAR-Bereich und die Dezimalbasis.

Oriya
Veraltet.

Identifiziert den ORIYA-Bereich und die Dezimalbasis.

Tamil
Veraltet.

Identifiziert den TAMIL-Bereich und die Dezimalbasis.

Telugu
Veraltet.

Identifiziert den TELUGU-Bereich und die Dezimalbasis.

Thai
Veraltet.

Identifiziert den THAI-Bereich und die Dezimalbasis.

Tibetan
Veraltet.

Identifiziert den TIBETISCHEn Bereich und die Dezimalbasis.

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
IsContextual

Gibt einen boolean Wert zurück, der angibt, ob diese Shaper-Shapes kontextbezogen sind.

JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniPeerMembers

Die NumericShaper Klasse wird verwendet, um lateinisch-1 (europäische) Ziffern in andere Unicode-Dezimalziffern zu konvertieren.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
Ranges

Gibt einen int Wert zurück, der die Werte für alle Bereiche zusammengibt, die geformt werden sollen.

RangeSet

Gibt einen Set Wert zurück, der alle Unicode-Bereiche in dieser NumericShaper Form darstellt.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)

Methoden

Name Beschreibung
Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetContextualShaper(Ranges, Int32)

Gibt einen kontextbezogenen Shaper für die bereitgestellten Unicode-Bereiche zurück.

GetContextualShaper(Ranges)

Gibt einen kontextbezogenen Shaper für die bereitgestellten Unicode-Bereiche zurück.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetShaper(Ranges)

Gibt einen Shaper für den bereitgestellten Unicode-Bereich zurück.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
Shape(Char[], Int32, Int32, Int32)

Wandelt die Ziffern im Text um, die zwischen Start und Start + Anzahl auftreten, mithilfe des bereitgestellten Kontexts.

Shape(Char[], Int32, Int32, NumericShaper+Range)

Konvertiert die Ziffern im Text, die zwischen Start und Anfang + Anzahl auftreten.

Shape(Char[], Int32, Int32)

Konvertiert die Ziffern im Text, die zwischen Start und Anfang + Anzahl auftreten.

ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IJavaPeerable.Disposed()

Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer verworfen wurde.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Gibt diesen Java Peer frei, es sei denn, er wird von einem anderen verwalteten Verweis beibehalten.

(Geerbt von Object)
IJavaPeerable.Finalized()

Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer abgeschlossen wurde.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Ruft den Zustand ab, der die Beziehung zwischen diesem verwalteten Peer und seinem JNI-Verweis beschreibt.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Legt den Interop-Identitätshashcode für diesen Java Peer fest.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Legt den verwalteten und JNI-Peerstatus für diesen Java Peer fest.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Legt den JNI-Objektverweis fest, der von diesem verwalteten Peer verwendet wird.

(Geerbt von Object)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Die NumericShaper Klasse wird verwendet, um lateinisch-1 (europäische) Ziffern in andere Unicode-Dezimalziffern zu konvertieren.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: