Easelt BuilderDocs
Feedback
Ouvrir Easelt Builder →
Interactivité

Texte arabe et RTL

Mise en forme (shaping) de l'arabe et texte de droite à gauche de premier ordre, ainsi que l'action Set Text.

Le dxDrawText de MTA ne met pas en forme ni ne réordonne l'arabe par lui-même — donnez-lui de l'arabe et il l'affiche sous forme de lettres déconnectées, de gauche à droite. Easelt Builder corrige cela pour vous au moment de l'export, de sorte que tout arabe que vous saisissez dans votre GUI ressorte connecté, correctement ordonné et correct en jeu. Cette page explique exactement ce qui se passe et comment travailler avec.

Pourquoi l'arabe nécessite un traitement particulier

En jeu, le dxDrawText de MTA:SA est un simple dessinateur de texte. Il n'applique pas les deux choses que l'arabe requiert : la mise en forme (choisir la forme de lettre connectée pour chaque position — initiale, médiane, finale ou isolée) et le bidi (disposer l'écriture de droite à gauche). Laissé tel quel, dxDrawText affiche l'arabe comme une suite de glyphes isolés et déconnectés s'écoulant de gauche à droite — illisible pour un arabophone.

Easelt Builder résout cela afin que vous n'ayez jamais à toucher au détail de bas niveau. Vous saisissez l'arabe comme vous le feriez ailleurs, et le Lua exporté embarque le texte entièrement préparé que dxDrawText peut afficher correctement.

Aperçu vs. export

Il y a deux moments où l'arabe est rendu, et ils fonctionnent différemment. Comprendre cette distinction explique pourquoi l'éditeur a toujours l'air correct — même avant qu'Easelt ne fasse son travail.

Dans l'aperçu de l'éditeur
L'arabe s'affiche déjà correctement ici parce que le navigateur le met en forme et l'ordonne pour vous. Ce que vous voyez sur le canevas est du véritable arabe, connecté et de droite à gauche.
À l'export
Easelt remet en forme votre arabe en formes de présentation Unicode (les formes de lettres connectées) et applique un bidi simplifié, puis intègre directement le résultat dans le Lua afin que le GUI en jeu corresponde à l'aperçu.
ℹ️

Le navigateur vous offre un aperçu correct gratuitement, mais le moteur du jeu ne le peut pas — c'est donc à l'export que le vrai travail se produit, là où le texte préparé est écrit dans votre Lua.

Ce qu'Easelt fait à l'export

Au moment de l'export, Easelt exécute deux transformations sur chaque morceau de texte avant de l'écrire dans le Lua.

  1. Remise en forme — chaque lettre arabe est convertie en sa forme de présentation Unicode correcte (forme connectée) en fonction de sa position dans le mot, afin que les lettres voisines se joignent comme l'arabe est censé le faire.
  2. Bidi simplifié — le texte est réordonné de droite à gauche, tandis que toute suite de caractères latins et de chiffres à l'intérieur est maintenue de gauche à droite afin de rester lisible.

La sortie de ces deux étapes est intégrée dans le Lua exporté. Le GUI en jeu affiche alors de l'arabe correct, connecté et correctement ordonné sans aucun code de mise en forme à l'exécution de votre côté.

Où l'arabe est pris en charge

La remise en forme et le bidi s'appliquent à tout texte que vous saisissez dans un élément — il n'y a pas de « mode arabe » spécial à activer. Chaque contrôle porteur de texte est couvert :

Élément / champPrise en charge de l'arabe
Étiquettes de texteRemis en forme et réordonné à l'export
BoutonsRemis en forme et réordonné à l'export
Champs de saisie (editboxes)Remis en forme et réordonné à l'export
Cases à cocherRemis en forme et réordonné à l'export
Titres de groupeRemis en forme et réordonné à l'export
Étiquettes de progressionRemis en forme et réordonné à l'export
Éléments de liste déroulanteRemis en forme et réordonné à l'export

Mélange de latin et de chiffres

Vous n'avez pas besoin d'isoler les mots latins ou les chiffres de votre arabe. Lorsqu'Easelt applique le bidi, il maintient les suites de latin et de chiffres de gauche à droite à l'intérieur d'une chaîne par ailleurs de droite à gauche, de sorte que des étiquettes comme une légende arabe avec un nom anglais intégré ou une valeur numérique se lisent correctement en jeu.

💡

Saisissez simplement les chaînes mixtes naturellement — de l'arabe avec un mot anglais ou un chiffre au milieu ressort avec chaque suite s'écoulant dans le bon sens.

Ligatures lam-alef

La ligature lam-alef — la forme combinée de لا que l'arabe requiert plutôt que deux lettres séparées — est gérée automatiquement lors de la remise en forme. Vous n'avez pas besoin de saisir de caractère spécial ni de ligature ; Easelt produit la forme combinée correcte pour vous.

Modifications de texte à l'exécution avec Blueprint

Le texte statique n'est pas la seule chose à être remise en forme. L'action Blueprint Set Text prend elle aussi en charge l'arabe : lorsque votre GUI modifie le texte d'un élément à l'exécution via Set Text, ce nouveau texte est également remis en forme, de sorte que les mises à jour dynamiques restent aussi correctes que le texte que vous avez conçu.

ℹ️

Le texte au moment de la conception comme les modifications Set Text à l'exécution passent par la même remise en forme et le même bidi, de sorte que votre GUI reste cohérent, que le texte soit fixe ou mis à jour en direct.

Comment l'utiliser

Il n'y a aucune configuration et aucun flux de travail à apprendre. Toute la fonctionnalité se résume à une seule pratique :

  1. Saisissez l'arabe normalement
    Entrez votre arabe dans n'importe quel champ de texte — étiquette, bouton, champ de saisie, case à cocher, titre de groupe, étiquette de progression ou élément de liste déroulante — exactement comme vous l'écririez ailleurs.
  2. Vérifiez l'aperçu
    L'éditeur affiche immédiatement de l'arabe correct, connecté et de droite à gauche, parce que le navigateur le met en forme pour vous.
  3. Exportez
    Easelt remet en forme vers les formes de présentation et applique un bidi simplifié, intégrant le résultat dans le Lua afin que le GUI en jeu corresponde.
💡

La seule chose à retenir : saisissez simplement l'arabe normalement. Easelt gère la mise en forme et le sens pour vous.


Cette documentation même est également disponible en arabe — vous pouvez donc lire cette page dans la langue même que parlent vos GUI.

Got feedback or an idea?Share it →