Translator
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Le rôle d'un Traducteur est de fabriquer/renvoyer des chaînes localisées pour le joueur de vue. Il peut être utilisé pour récupérer du texte localisé pour la vue du joueur dans un LocalizationTable. La source de la propriété Translator.LocaleId , le ensemble de tables qu'il recherchera et l'ordre dans lequel il les recherchera dépend de la méthode utilisée pour cré
L'entrée pour un Traducteur est la chaîne de langage de développement originale et un contexte, où tout ou une partie du contexte peut être utilisée pour trouver une traduction plus précise/situationnelle pour la chaîne source.
Le Traducteur peut également être utilisé pour fabriquer des chaînes traduites avec des inserts (remplacements de données) qui peuvent changer l'ordre en fonction de la langue cible.
Résumé
Propriétés
La localisation des chaînes traduites.
Méthodes
Retourne la chaîne de texte localisée dans un LocalizationTable basé sur son Translator local, par clé.
Renvoie la chaîne de texte localisée dans un LocalizationTable basé sur sa Translator localisation, par recherche source.
Propriétés
LocaleId
La localisation Roblox des chaînes de sortie traduites de cette table, par exemple « en-us » ou « es-es ». Par défaut, « en-us ».
Méthodes
FormatByKey
Renvoie la chaîne de texte localisée dans un LocalizationTable en fonction de son Translator local, par clé. La table facultative args est utilisée pour remplir les paramètres de forme dans l'entrée de texte correspondante.
Remarquez que cette méthode lancera une erreur dans les cas suivants :
- Si aucune des LocalizationTables disponibles pour ce Translator ne inclut pas de valeur pour la clé donnée.
- Si la chaîne de format pour la clé utilise des paramètres numériques et arguments n'est pas un matrice.
- Si la chaîne de format utilise des paramètres nommés et 1> 4> 7> 0> 3> 4> 7> 8> 0> 1> 4> 7> 0> 1> 2> 3> 4> 5> 6> 7> 8> 0> 1> 2> 3> 4> 5> 6> 7> 8> 9>0> 1> 2> 3> 4> 5> 6> 7> 8> 9> 0>
- Si ** 0> 1> 2> 3> 4> 5> 6> 7> 8> 9>** 0> 1> 2> 3> 4> 5> 6> 7> 8> 9> 0> 1> 2> 3> 4> 5> 6> 7> 8> 9> 0> 1> 2> 3> 4> 5> 6> 7> 8> 9> 0> 1> 2> 3> 4>
Voir Localisation avec le scripting pour plus de détails et d'exemples d'utilisation de cette fonction.
Paramètres
La valeur clé pour rechercher et traduire.
À fournir si le texte de la source et les traductions contiennent des chaînes de format. Ce sera une table Lua de valeurs ou paires de valeur clé, en fonction de si les chaînes de format sont numérotées ou nommées.
Retours
Translate
Renvoie la chaîne de texte localisée dans un LocalizationTable basé sur son lieu Translator. Ce texte sera dans le contexte de l'objet fourni, étant donné le texte source fourni.
Voir Localisation avec le scripting pour plus de détails et d'exemples d'utilisation de cette fonction.
Surfaces contextuelles
Dans certains cas, les mêmes Source строки peuvent avoir des traductions complètement différentes dans d'autres langues. Par exemple, le nom de noun "Écran" peut indiquer à la fois un écran d'ordinateur et un écran de fenêtre, mais les traductions espagnoles sont complètement différentes :
<tr><td>Clé</td><td>Contexte</td><td><b>Source</b></td><td>Exemple</td><td><b>es</b></td></tr><tr><td /><td /><td>Écran</td><td /><td>Pantalla</td></tr><tr><td /><td /><td>Écran</td><td /><td>Mosquito</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
Une | B | C | T | E |
Dans ces cas, le premier argument à cette fonction — un Instance valide dans le jeu — peut être utilisé comme un « tiens-se-fauché » lorsque plusieurs objets GUI utilisent la même chaîne de source. Pour implémenter cela, spécifiez le « chemin » à la Instance que vous souhaitez au-dessus de la valeur contextuelle des données de traduction :
<tr><td>Clé</td><td><b>Contexte</b></td><td>fr</td><td>Exemple</td><td>es</td></tr><tr><td /><td>Workspace.ComputerScreen.SurfaceGui.TextLabel</td><td>Écran</td><td /><td>Pantalla</td></tr><tr><td /><td /><td>Écran</td><td /><td>Mosquito</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
Une | B | C | T | E |
Ensuite, lorsque vous appelez cette fonction dans un script, passez le même Instance que l'argent de premier argument, suivi du texte de recherche de la source comme l'argent de deuxième argument :
local LocalizationService = game:GetService("LocalizationService")
local success, translator = pcall(function()
return LocalizationService:GetTranslatorForPlayerAsync(game.Players.LocalPlayer)
end)
if success then
local trans = translator:Translate(workspace.ComputerScreen.SurfaceGui.TextLabel, "Screen")
print(trans)
else
warn("Cannot load translator for player!")
end
Paramètres
Un Instance valide dans le jeu pour être utilisé pour l'覆盖 contextuelle comme décrit ci-dessus. Notez que cet argument peut être arbitraire, par exemple game, si vous n'avez pas besoin d'remplacer.
Le texte de source pour rechercher et traduire.
Retours
Le texte traduit.