Langue

Bidi Classe

Définition

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
[Android.Runtime.Register("android/icu/text/Bidi", ApiSince=29, DoNotGenerateAcw=true)]
public class Bidi : Java.Lang.Object
[<Android.Runtime.Register("android/icu/text/Bidi", ApiSince=29, DoNotGenerateAcw=true)>]
type Bidi = class
    inherit Object
Héritage
Attributs

Remarques

<Algorithme Bidi h2>pour ICU</h2>

Il s’agit d’une implémentation de l’algorithme bidirectionnel Unicode. L’algorithme est défini dans l’annexe Standard Unicode #9.

Remarque : les bibliothèques qui effectuent un algorithme bidirectionnel et réorganisent les chaînes en conséquence sont parfois appelées « Moteurs de disposition de stockage ». Les classes Bidi et mise en forme (arabicShaping) de l’ICU peuvent être utilisées au cœur de ces « moteurs de disposition de stockage ».

< >Remarques générales sur l’API :</h3>

" limit" d’une séquence de caractères est la position juste après leur dernier caractère, c’est-à-dire une autre position.

Certaines méthodes d’API fournissent un accès à " exécute". Un tel " run" est défini comme une séquence de caractères qui se trouvent au même niveau d’incorporation après avoir effectué l’algorithme Bidi.

<Concept de base h3>: paragraphe</h3> Une partie de texte peut être divisée en plusieurs paragraphes par caractères avec la classe Block SeparatorBidi . Pour la gestion des paragraphes, consultez : <ul><li>#countParagraphs<li li>#getParaLevel<>#getParagraph<>#getParagraphByIndex</ul>

<concept de base h3>: sens< du texte/h3> La direction d’un morceau de texte peut être : <ul><li>#LTR<li li>#RTL<>#MIXED<li>#NEUTRAL</ul>

<concept de base h3>: niveaux</h3>

Les niveaux de cette API représentent des niveaux d’incorporation en fonction de l’algorithme bidirectionnel Unicode. Leur bit de faible ordre (même/impair) indique la direction visuelle.

Les niveaux peuvent être des valeurs abstraites lorsqu’ils sont utilisés pour les paraLevelembeddingLevels arguments et les arguments de setPara(); il y a : <ul><li>le bit d’ordre élevé d’une embeddingLevels[] valeur indique si l’application using spécifie le niveau d’un caractère pour remplacer l’implémentation Bidi la résoudre.</li li><>paraLevel peut être défini sur les valeurs LEVEL_DEFAULT_LTR de pseudo-niveau et .LEVEL_DEFAULT_RTL</li></ul>

Les constantes associées ne sont pas des valeurs de niveau réels et valides. DEFAULT_XXX peut être utilisé pour spécifier une valeur par défaut pour le niveau de paragraphe pour le moment où la setPara() méthode doit la déterminer, mais il n’y a pas de caractère fortement typé dans l’entrée.

Notez que la valeur pour LEVEL_DEFAULT_LTR est même et que celle pour LEVEL_DEFAULT_RTL est impaire, tout comme avec les valeurs de niveau LTR et RTL normales , ces valeurs spéciales sont conçues de cette façon. En outre, l’implémentation suppose que MAX_EXPLICIT_LEVEL est impair.

Remarque : Les valeurs numériques des constantes associées ne changeront pas : elles sont liées à l’utilisation de valeurs d’octets 7 bits (plus le bit de remplacement) et du type de données d’octet dans cette API.

<b>Voir aussi :</b><ul><>#LEVEL_DEFAULT_LTR<li li>#LEVEL_DEFAULT_RTL<li li>#LEVEL_OVERRIDE<li>#MAX_EXPLICIT_LEVEL<>#setPara</ul>

<Concept de base h3>: Réorganiser le mode</h3> Les valeurs du mode de réorganisation indiquent quelle variante de l’algorithme Bidi à utiliser.

<b>Voir aussi :</b><ul><>#setReorderingMode<li>#REORDER_DEFAULT<>#REORDER_NUMBERS_SPECIAL<>#REORDER_GROUP_NUMBERS_WITH_R<>#REORDER_RUNS_ONLY<>#REORDER_INVERSE_NUMBERS_AS_L<>#REORDER_INVERSE_LIKE_DIRECT<>#REORDER_INVERSE_FOR_NUMBERS_SPECIAL</ul>

<Concept de base h3>: les options de réorganisation des options</h3> de réorganisation peuvent être appliquées pendant les transformations de texte Bidi.

<b>Voir aussi :</b><ul><>#setReorderingOptions<li li>#OPTION_DEFAULT<li li>#OPTION_INSERT_MARKS<li>#OPTION_REMOVE_CONTROLS<>#OPTION_STREAMING</ul>

<Exemple de code h4> pour l’API <Bidi de l’ICU /h4>

<h5>Rendu d’un paragraphe avec l’API< Bidi iCU/h5>

Il s’agit d’un exemple de code (hypothétique) qui illustre la façon dont l’API Bidi ICU peut être utilisée pour afficher un paragraphe de texte. Le code de rendu dépend fortement du système graphique, par conséquent cet exemple de code doit faire beaucoup d’hypothèses, qui peuvent ou ne pas correspondre aux propriétés du système graphique existant.

Les hypothèses de base sont les suivantes :

<ul><li>Rendering est effectué de gauche à droite sur une ligne horizontale.</li li><>Une série de texte unidirectionnel unique peut être rendue à la fois. </li li><>Une telle série de texte est passée au système graphique avec des caractères (unités de code) dans l’ordre logique.</li li><>L’algorithme cassant la ligne est très compliqué et dépendant des paramètres régionaux , et par conséquent son implémentation omise à partir de cet exemple de code.</li></ul>

package android.icu.dev.test.bidi;

             import android.icu.text.Bidi;
             import android.icu.text.BidiRun;

             public class Sample {

                 static final int styleNormal = 0;
                 static final int styleSelected = 1;
                 static final int styleBold = 2;
                 static final int styleItalics = 4;
                 static final int styleSuper=8;
                 static final int styleSub = 16;

                 static class StyleRun {
                     int limit;
                     int style;

                     public StyleRun(int limit, int style) {
                         this.limit = limit;
                         this.style = style;
                     }
                 }

                 static class Bounds {
                     int start;
                     int limit;

                     public Bounds(int start, int limit) {
                         this.start = start;
                         this.limit = limit;
                     }
                 }

                 static int getTextWidth(String text, int start, int limit,
                                         StyleRun[] styleRuns, int styleRunCount) {
                     // simplistic way to compute the width
                     return limit - start;
                 }

                 // set limit and StyleRun limit for a line
                 // from text[start] and from styleRuns[styleRunStart]
                 // using Bidi.getLogicalRun(...)
                 // returns line width
                 static int getLineBreak(String text, Bounds line, Bidi para,
                                         StyleRun styleRuns[], Bounds styleRun) {
                     // dummy return
                     return 0;
                 }

                 // render runs on a line sequentially, always from left to right

                 // prepare rendering a new line
                 static void startLine(byte textDirection, int lineWidth) {
                     System.out.println();
                 }

                 // render a run of text and advance to the right by the run width
                 // the text[start..limit-1] is always in logical order
                 static void renderRun(String text, int start, int limit,
                                       byte textDirection, int style) {
                 }

                 // We could compute a cross-product
                 // from the style runs with the directional runs
                 // and then reorder it.
                 // Instead, here we iterate over each run type
                 // and render the intersections -
                 // with shortcuts in simple (and common) cases.
                 // renderParagraph() is the main function.

                 // render a directional run with
                 // (possibly) multiple style runs intersecting with it
                 static void renderDirectionalRun(String text, int start, int limit,
                                                  byte direction, StyleRun styleRuns[],
                                                  int styleRunCount) {
                     int i;

                     // iterate over style runs
                     if (direction == Bidi.LTR) {
                         int styleLimit;
                         for (i = 0; i &lt; styleRunCount; ++i) {
                             styleLimit = styleRuns[i].limit;
                             if (start &lt; styleLimit) {
                                 if (styleLimit &gt; limit) {
                                     styleLimit = limit;
                                 }
                                 renderRun(text, start, styleLimit,
                                           direction, styleRuns[i].style);
                                 if (styleLimit == limit) {
                                     break;
                                 }
                                 start = styleLimit;
                             }
                         }
                     } else {
                         int styleStart;

                         for (i = styleRunCount-1; i &gt;= 0; --i) {
                             if (i &gt; 0) {
                                 styleStart = styleRuns[i-1].limit;
                             } else {
                                 styleStart = 0;
                             }
                             if (limit &gt;= styleStart) {
                                 if (styleStart &lt; start) {
                                     styleStart = start;
                                 }
                                 renderRun(text, styleStart, limit, direction,
                                           styleRuns[i].style);
                                 if (styleStart == start) {
                                     break;
                                 }
                                 limit = styleStart;
                             }
                         }
                     }
                 }

                 // the line object represents text[start..limit-1]
                 static void renderLine(Bidi line, String text, int start, int limit,
                                        StyleRun styleRuns[], int styleRunCount) {
                     byte direction = line.getDirection();
                     if (direction != Bidi.MIXED) {
                         // unidirectional
                         if (styleRunCount &lt;= 1) {
                             renderRun(text, start, limit, direction, styleRuns[0].style);
                         } else {
                             renderDirectionalRun(text, start, limit, direction,
                                                  styleRuns, styleRunCount);
                         }
                     } else {
                         // mixed-directional
                         int count, i;
                         BidiRun run;

                         try {
                             count = line.countRuns();
                         } catch (IllegalStateException e) {
                             e.printStackTrace();
                             return;
                         }
                         if (styleRunCount &lt;= 1) {
                             int style = styleRuns[0].style;

                             // iterate over directional runs
                             for (i = 0; i &lt; count; ++i) {
                                 run = line.getVisualRun(i);
                                 renderRun(text, run.getStart(), run.getLimit(),
                                           run.getDirection(), style);
                             }
                         } else {
                             // iterate over both directional and style runs
                             for (i = 0; i &lt; count; ++i) {
                                 run = line.getVisualRun(i);
                                 renderDirectionalRun(text, run.getStart(),
                                                      run.getLimit(), run.getDirection(),
                                                      styleRuns, styleRunCount);
                             }
                         }
                     }
                 }

                 static void renderParagraph(String text, byte textDirection,
                                             StyleRun styleRuns[], int styleRunCount,
                                             int lineWidth) {
                     int length = text.length();
                     Bidi para = new Bidi();
                     try {
                         para.setPara(text,
                                      textDirection != 0 ? Bidi.LEVEL_DEFAULT_RTL
                                                         : Bidi.LEVEL_DEFAULT_LTR,
                                      null);
                     } catch (Exception e) {
                         e.printStackTrace();
                         return;
                     }
                     byte paraLevel = (byte)(1 &amp; para.getParaLevel());
                     StyleRun styleRun = new StyleRun(length, styleNormal);

                     if (styleRuns == null || styleRunCount &lt;= 0) {
                         styleRuns = new StyleRun[1];
                         styleRunCount = 1;
                         styleRuns[0] = styleRun;
                     }
                     // assume styleRuns[styleRunCount-1].limit&gt;=length

                     int width = getTextWidth(text, 0, length, styleRuns, styleRunCount);
                     if (width &lt;= lineWidth) {
                         // everything fits onto one line

                         // prepare rendering a new line from either left or right
                         startLine(paraLevel, width);

                         renderLine(para, text, 0, length, styleRuns, styleRunCount);
                     } else {
                         // we need to render several lines
                         Bidi line = new Bidi(length, 0);
                         int start = 0, limit;
                         int styleRunStart = 0, styleRunLimit;

                         for (;;) {
                             limit = length;
                             styleRunLimit = styleRunCount;
                             width = getLineBreak(text, new Bounds(start, limit),
                                                  para, styleRuns,
                                                  new Bounds(styleRunStart, styleRunLimit));
                             try {
                                 line = para.setLine(start, limit);
                             } catch (Exception e) {
                                 e.printStackTrace();
                                 return;
                             }
                             // prepare rendering a new line
                             // from either left or right
                             startLine(paraLevel, width);

                             if (styleRunStart &gt; 0) {
                                 int newRunCount = styleRuns.length - styleRunStart;
                                 StyleRun[] newRuns = new StyleRun[newRunCount];
                                 System.arraycopy(styleRuns, styleRunStart, newRuns, 0,
                                                  newRunCount);
                                 renderLine(line, text, start, limit, newRuns,
                                            styleRunLimit - styleRunStart);
                             } else {
                                 renderLine(line, text, start, limit, styleRuns,
                                            styleRunLimit - styleRunStart);
                             }
                             if (limit == length) {
                                 break;
                             }
                             start = limit;
                             styleRunStart = styleRunLimit - 1;
                             if (start &gt;= styleRuns[styleRunStart].limit) {
                                 ++styleRunStart;
                             }
                         }
                     }
                 }

                 public static void main(String[] args)
                 {
                     renderParagraph("Some Latin text...", Bidi.LTR, null, 0, 80);
                     renderParagraph("Some Hebrew text...", Bidi.RTL, null, 0, 60);
                 }
             }

Java documentation pour android.icu.text.Bidi.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

Constructeurs

Nom Description
Bidi()

Allouez un Bidi objet.

Bidi(Char[], Int32, Byte[], Int32, Int32, BidiOptions)

Créez Bidi à partir du texte, de l’incorporation et des informations de direction donnés.

Bidi(IAttributedCharacterIterator)

Créez Bidi à partir du paragraphe donné du texte.

Bidi(Int32, Int32)

Allouez un objet avec de Bidi la mémoire préallouée pour les structures internes.

Bidi(IntPtr, JniHandleOwnership)

Crée une instance managée qui représente un objet Java existant.

Bidi(String, BidiOptions)

Créez Bidi à partir du paragraphe donné du texte et du sens de base.

Champs

Nom Description
DirectionDefaultLeftToRight
Obsolète.

Constante indiquant que la direction de base dépend du premier caractère directionnel fort dans le texte en fonction de l’algorithme bidirectionnel Unicode.

DirectionDefaultRightToLeft
Obsolète.

Constante indiquant que la direction de base dépend du premier caractère directionnel fort dans le texte en fonction de l’algorithme bidirectionnel Unicode.

DirectionLeftToRight
Obsolète.

Constante indiquant que la direction de base est de gauche à droite.

DirectionRightToLeft
Obsolète.

Constante indiquant que la direction de base est de droite à gauche.

DoMirroring

bit d’option pour writeReordered() : remplacez les caractères par la propriété « mise en miroir » dans RTL s’exécute par leurs mappages d’images miroir

InsertLrmForNumeric

bit d’option pour writeReordered() : entourez l’exécution avec des LRMs si nécessaire ; il s’agit d’une partie de l’algorithme approximatif « inverse Bidi »

KeepBaseCombining

bit d’option pour writeReordered() : continuez à combiner des caractères après les exécutions de leurs caractères de base dans RTL

LevelDefaultLtr

Paramètre au niveau du paragraphe

LevelDefaultRtl

Paramètre au niveau du paragraphe

LevelOverride

Indicateur de bits pour l’entrée de niveau.

Ltr

Texte de gauche à droite.

MapNowhere
Obsolète.

Valeur spéciale qui peut être retournée par les méthodes de mappage lorsqu’un index logique n’a pas d’index visuel correspondant ou inversement.

MaxExplicitLevel

Niveau maximal d’incorporation explicite.

Mixed

Texte directionnel mixte.

Neutral

Aucun texte fortement directionnel.

OptionDefault
Obsolète.

Valeur d’option pour setReorderingOptions: désactiver toutes les options qui peuvent être définies avec cette méthode

OptionInsertMarks
Obsolète.

Bit d’option pour setReorderingOptions: insérer des marques Bidi (LRM ou RLM) si nécessaire pour garantir le résultat correct d’une réorganisation dans un ordre logique

OptionRemoveControls
Obsolète.

Bit d’option pour setReorderingOptions: supprimer les caractères de contrôle Bidi

OptionStreaming
Obsolète.

Bit d’option pour setReorderingOptions: traiter la sortie dans le cadre d’un flux à poursuivre

OutputReverse

bit d’option pour writeReordered() : écrivez la sortie dans l’ordre inverse

RemoveBidiControls

bit d’option pour writeReordered() : supprimer les caractères de contrôle Bidi (cela n’affecte pas INSERT_LRM_FOR_NUMERIC)

ReorderDefault

Mode de réorganisation : algorithme Logique standard en Visual Bidi en fonction d’Unicode.

ReorderGroupNumbersWithR

Mode de réorganisation : algorithme logique à algorithme visuel regroupant des nombres avec des caractères R adjacents (algorithme réversible).

ReorderInverseForNumbersSpecial

Mode de réorganisation : algorithme Bidi inverse (visuel en logique) pour l’algorithme REORDER_NUMBERS_SPECIAL Bidi.

ReorderInverseLikeDirect

Mode de réorganisation : algorithme visuel en algorithme logique équivalent à l’algorithme logique normal à visuel.

ReorderInverseNumbersAsL

Mode de réorganisation : algorithme visuel en algorithme logique qui gère des nombres comme L (même algorithme que celui sélectionné par setInverse(true).

ReorderNumbersSpecial

Mode de réorganisation : algorithme logique à visuel qui gère les nombres d’une manière qui imite le comportement de Windows XP.

ReorderRunsOnly

Mode de réorganisation : la réorganisation s’exécute uniquement pour transformer une chaîne LTR logique en chaîne RTL logique avec le même affichage, ou inversement.

Rtl

Texte de droite à gauche.

Propriétés

Nom Description
BaseLevel

Retourne le niveau de base (0 si gauche à droite, 1 si droite à gauche).

Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
CustomClassifier

Obtient le classifieur de classe personnalisé actuel utilisé pour la détermination de classe Bidi. -ou- Définir un classifieur Bidi personnalisé utilisé par l’implémentation UBA pour la détermination de classe Bidi.

Direction

Obtenez la direction du texte.

Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
Inverse

Cet Bidi objet est-il défini pour effectuer l’algorithme Bidi inverse ? -ou- Modifiez l’opération de l’algorithme Bidi de telle sorte qu’il se rapproche d’un algorithme « inverse Bidi ».

IsLeftToRight

Retourne la valeur true si la ligne est tout le texte de gauche à droite et que la direction de base est de gauche à droite.

IsMixed

Retourne la valeur true si la ligne n’est pas de gauche à droite ou de droite à gauche.

IsOrderParagraphsLTR

Cet Bidi objet est-il défini pour allouer le niveau 0 pour bloquer les séparateurs afin que les paragraphes successifs progressent de gauche à droite ?

IsRightToLeft

Retourne la valeur true si la ligne est tout le texte de droite à gauche et que la direction de base est de droite à gauche

JniIdentityHashCode

Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité.

(Hérité de Object)
JniManagedPeerState

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
JniPeerMembers

Obtient les métadonnées JNI utilisées pour accéder aux membres de cette liaison Java.

Length

Obtenez la longueur du texte.

ParaLevel

Obtenez le niveau de paragraphe du texte.

PeerReference

Obtient la référence d’objet JNI pour cet homologue Java.

(Hérité de Object)
ProcessedLength

Obtenez la longueur du texte source traité par le dernier appel à setPara().

ReorderingMode

Quel est le mode de réorganisation demandé pour un objet Bidi donné ? -ou- Modifiez l’opération de l’algorithme Bidi de telle sorte qu’il implémente une variante à l’algorithme Bidi de base ou approximativement un algorithme « Bidi inverse », en fonction des valeurs différentes du « mode de réorganisation ».

ReorderingOptions

Quelles sont les options de réorganisation appliquées à un objet Bidi donné ? -ou- Spécifiez quelles options de réorganisation doivent être appliquées pendant les transformations Bidi.

ResultLength

Obtenez la longueur du texte réorganisé résultant du dernier appel à setPara().

RunCount

Retourne le nombre d’exécutions de niveau.

TextAsString

Obtenez le texte.

ThresholdClass

Obtient la classe Java utilisée pour la distribution de méthode virtuelle.

ThresholdType

Obtient le type managé qui déclare cette liaison Java.

Méthodes

Nom Description
BaseIsLeftToRight()

Retourne la valeur true si la direction de base est de gauche à droite

Clone()

Crée et retourne une copie de cet objet.

(Hérité de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
CountParagraphs()

Obtenez le nombre de paragraphes.

CountRuns()

Obtenez le nombre d’exécutions.

CreateLineBidi(Int32, Int32)

Créez un objet Bidi représentant les informations bidi sur une ligne de texte dans le paragraphe représenté par l’objet Bidi actuel.

Dispose()

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
Dispose(Boolean)

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
DisposeUnlessReferenced()

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
Equals(Object)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
GetBaseDirection(ICharSequence)

Obtenez la direction de base du texte fourni en fonction de l’algorithme bidirectionnel Unicode.

GetBaseDirection(String)

Obtenez la direction de base du texte fourni en fonction de l’algorithme bidirectionnel Unicode.

GetCustomizedClass(Int32)

Récupère la classe Bidi pour un point de code donné.

GetHashCode()

Retourne une valeur de code de hachage pour l’objet.

(Hérité de Object)
GetLevelAt(Int32)

Obtenez le niveau d’un caractère.

GetLevels()

Obtenez un tableau de niveaux pour chaque caractère.

GetLogicalIndex(Int32)

Obtenez la position du texte logique à partir d’une position visuelle.

GetLogicalMap()

Obtenez une carte d’index logique à visuel (tableau) pour les caractères de l’objet Bidi (paragraphe ou ligne).

GetLogicalRun(Int32)

Obtenez une exécution logique.

GetParagraph(Int32)

Obtenez un paragraphe, en fonction d’une position dans le texte.

GetParagraphByIndex(Int32)

Obtenez un paragraphe, en fonction de l’index de ce paragraphe.

GetParagraphIndex(Int32)

Obtenez l’index d’un paragraphe, en fonction d’une position dans le texte.

GetRunLevel(Int32)

Retourne le niveau de la nième exécution logique dans cette ligne.

GetRunLimit(Int32)

Retourne l’index du caractère au-delà de la fin de la nième exécution logique dans cette ligne, sous la forme d’un décalage par rapport au début de la ligne.

GetRunStart(Int32)

Retourne l’index du caractère au début de la nième exécution logique dans cette ligne, sous la forme d’un décalage par rapport au début de la ligne.

GetText()

Obtenez le texte.

GetVisualIndex(Int32)

Obtenir la position visuelle à partir d’une position de texte logique.

GetVisualMap()

Obtenez une carte d’index visuel à logique (tableau) pour les caractères de l’objet Bidi (paragraphe ou ligne).

GetVisualRun(Int32)

Obtenez un BidiRun objet en fonction de son index.

InvertMap(Int32[])

Inverser une carte d’index.

JavaFinalize()
Obsolète.

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
OrderParagraphsLTR(Boolean)

Spécifiez si les séparateurs de blocs doivent être alloués au niveau zéro, afin que les paragraphes successifs passent de gauche à droite.

ReorderLogical(Byte[])

Il s’agit d’une méthode pratique qui n’utilise pas d’objet Bidi .

ReorderVisual(Byte[])

Il s’agit d’une méthode pratique qui n’utilise pas d’objet Bidi .

ReorderVisually(Byte[], Int32, Object[], Int32, Int32)

Réorganisez les objets du tableau en ordre visuel en fonction de leurs niveaux.

RequiresBidi(Char[], Int32, Int32)

Retourne la valeur true si le texte spécifié nécessite une analyse bidi.

SetContext(String, String)

Définissez le contexte avant un appel à setPara().

SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetLine(Int32, Int32)

setLine() retourne un Bidi objet pour contenir les informations de réorganisation, en particulier les niveaux résolus, pour tous les caractères d’une ligne de texte.

SetPara(Char[], SByte, Byte[])

Effectuez l’algorithme Bidi Unicode.

SetPara(IAttributedCharacterIterator)

Effectuez l’algorithme Bidi Unicode sur un paragraphe donné, tel que défini dans l’annexe Standard Unicode #9, version 13, également décrite dans La norme Unicode, version 4.

SetPara(String, SByte, Byte[])

Effectuez l’algorithme Bidi Unicode.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
ToArray<T>()

Crée un tableau managé à partir de ce wrapper de tableau Java.

(Hérité de Object)
ToString()

Retourne une représentation sous forme de chaîne de l’objet.

(Hérité de Object)
UnregisterFromRuntime()

Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité.

(Hérité de Object)
Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
WriteReordered(BidiOptions)

Prenez un Bidi objet contenant les informations de réorganisation d’un élément de texte (un ou plusieurs paragraphes) défini par setPara() ou pour une ligne de texte setLine() définie et renvoyez une chaîne contenant le texte réorganisé.

WriteReverse(String, BidiOptions)

Inverser une exécution de texte UnicodeTo-Left droite.

Implémentations d’interfaces explicites

Nom Description
IJavaPeerable.Disposed()

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
IJavaPeerable.Finalized()

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
(Hérité de JavaObject)

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

<Algorithme Bidi h2>pour ICU</h2>

        This is an implementation of the Unicode Bidirectional Algorithm.
TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à