Translator

Visualizza obsoleti

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Non costruibile
Non Replicato

Il ruolo di un traduttore è di produrre/restituire le stringhe localizzate per il Giocatoredi visualizzazione. Può essere utilizzato per recuperare il testo visualizzato localizzato da un LocalizationTable . La fonte della ProprietàTranslator.LocaleId , la serie di tabelle che Cercaree l'ordine in cui cercherà sono dipendenti dal metodo utilizzato per creare l'esempio

L'input per un traduttore è la stringa di lingua di sviluppo originale e un contesto, in cui tutta o parte del contesto può essere utilizzata per trovare una traduzione più precisa / situazionale per la Stringadi origine.

Il traduttore può anche essere utilizzato per la produzione di stringhe tradotte con inseriti (sostituzioni dei dati) che possono cambiare l'ordine in base alla lingua di destinazione.

Sommario

Proprietà

  • Sola Lettura
    Non Replicato
    Lettura Parallela

    La località delle stringhe tradotte.

Metodi

Proprietà

LocaleId

Sola Lettura
Non Replicato
Lettura Parallela

Il locale della lingua di output tradotta da questa tabella, per esempio "it-it" o "es-es". Le predefinizioni sono "it-it".

Metodi

FormatByKey

Restituisce la stringa di testo localizzata in un LocalizationTable in base alla sua Translator località, per chiave. La tabella opzionale args viene utilizzata per riempire i parametri di formato nella corrispondente voce di testo.

Nota che questo metodo mostrerà un errore nei seguenti casi:

  • Se nessuno dei LocalizationTables disponibili a questo Translator include un valore per la chiave fornita.
  • Se il formato stringa per la chiave usa parametri numerati e arge non è un vettore.
  • Se il formato stringa usa parametri e arge non è una tabella di coppie chiave-valore.
  • Se ** 1> 4> 7>** 0> 1> 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> 1> 2> 3> 4> 5> <

Vedi Localizzazione con lo scripting per maggiori dettagli e esempi d'uso di questa funzione.

Parametri

key: string

Il valore Chiave per cercare e tradurre.

args: Variant

Fornito se il testo della fonte e le traduzioni contengono stringhe di formato. Sarà una tabella Lua di valori o coppie di valore chiave, a seconda se le stringhe di formato sono numerate o nominate.


Restituzioni

Translate

Restituisce la stringa di testo localizzata in un LocalizationTable in base alla sua Translator località. Questa stringa sarà nel contesto dell'oggetto fornito, dato il testo di origine fornito.

Vedi Localizzazione con lo scripting per maggiori dettagli e esempi d'uso di questa funzione.

Ridimensionamento dei contexti

In alcuni casi, le dupliche Source stringhe potrebbero avere traduzioni completamente diverse in altre lingue. Ad esempio, il noun inglese "Screen" può indicare sia uno schermo del computer che uno schermo della finestra, ma le traduzioni spagnole sono completamente diverse:


<tr>
<td>Chiave</td>
<td>Contesto</td>
<td><b>Fonte</b></td>
<td>Esempio</td>
<td><b>es</b></td>
</tr>
<tr>
<td />
<td />
<td>Schermo</td>
<td />
<td>Schermo</td>
</tr>
<tr>
<td />
<td />
<td>Schermo</td>
<td />
<td>Mosquito</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
UnBCDE

In questi casi, il primo argomento a questa funzione — un valore di gioco valido in-game Instance — può essere utilizzato come "tie breaker" quando più oggetti GUI utilizzano la stessa Stringadi origine. Per implementare questo, specifica il "path" alla Instance che desideri sovrascrivere come valore contestuale dei dati di traduzione:


<tr>
<td>Chiave</td>
<td><b>Contesto</b></td>
<td>Fonte</td>
<td>Esempio</td>
<td>es</td>
</tr>
<tr>
<td />
<td>workspace.ComputerScreen.SurfaceGui.TextLabel</td>
<td>Schermo</td>
<td />
<td>Schermo</td>
</tr>
<tr>
<td />
<td />
<td>Schermo</td>
<td />
<td>Mosquito</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
UnBCDE

Quindi, quando si chiama questa funzione in uno script, passa lo stesso Instance come primo argomento, seguito dal testo di ricerca Fonte come secondo argomento:


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

Parametri

context: Instance

Un valido Instance in gioco per usare come override di contesto come descritti sopra. Nota che questo argomento può essere arbitrario, ad esempio game , se non richiedi un Soprascriveredi contesto.

text: string

Il testo Fonte da cercare e tradurre.


Restituzioni

Il testo tradotto.

Eventi