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 è quello di fabbricare/restituire le stringhe localizzate per il Giocatoredi visualizzazione.Può essere utilizzato per recuperare testo localizzato pronto per l'esposizione da un LocalizationTable .La fonte della proprietà Translator.LocaleId della Proprietà, il set di tabelle che Cercaree l'ordine in cui le cercherà dipende dal metodo utilizzato per creare l'esempiodel Traduttore.

L'input per un Traduttore è la stringa del linguaggio 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ò essere utilizzato anche per la produzione di stringhe tradotte con inserimenti (sostituzioni di dati) che possono cambiare l'ordine in base alla lingua target.

Sommario

Proprietà

  • Sola Lettura
    Non Replicato
    Lettura Parallela

    Il locale delle stringhe tradotte.

Metodi

Proprietà

LocaleId

Sola Lettura
Non Replicato
Lettura Parallela

Il locale Roblox dell'output traduce le stringhe tradotte da questa tabella, ad esempio "en-us" o "es-es". Predefinisce "en-us".

Metodi

FormatByKey

Restituisce la stringa di testo localizzata in una LocalizationTable in base alla sua Translator locale, per chiave.La tabella opzionale args viene utilizzata per riempire i parametri di formato nella riga di test corrispondente.

Si noti che questo metodo lancerà un errore nei seguenti casi:

  • Se nessuno dei LocalizationTables disponibili a questo Translator include un valore per la chiave data.
  • Se la forma di formato per la chiave utilizza parametri numerati e args non è un vettore.
  • Se la stringa di formato utilizza parametri nominati e args non è una tabella di coppie chiave-valore.
  • Se args manca di valori per i parametri che vengono utilizzati nel formato di corrispondenza stringa .

Vedi Localizzare con gli script per maggiori dettagli e esempi di utilizzo di questa funzione.

Parametri

key: string

Il valore Chiave per cercare e tradurre.

Valore predefinito: ""
args: Variant

Da fornire se il testo e le traduzioni della fonte contengono stringhe di formato .Sarà un tavolo Luau di valori o coppie chiave-valore, a seconda se le stringhe di formato sono numerate o nominate.

Valore predefinito: ""

Restituzioni

Translate

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

Vedi Localizzare con gli script per maggiori dettagli e esempi di utilizzo di questa funzione.

Sovrascrizioni di contesto

In alcuni casi, le stringhe duplicate di Fonte possono avere traduzioni completamente diverse in altre lingue.Ad esempio, il nome inglese "Schermo" può indicare sia uno schermo del computer che uno schermo della finestra, ma le traduzioni spagnole sono completamente diverse:


<td width="16%">B</td>
<td width="18%">C</td>
<td width="12%">D</td>
<td width="18%">E</td>
</tr>
<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>Pannello</td>
</tr>
<tr>
<td />
<td />
<td>Schermo</td>
<td />
<td>Zanzariera</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
A

In questi casi, il primo argomento di questa funzione — un valido oggetto GUI in gioco Instance — può essere utilizzato come "rompitore di pareggio" quando più oggetti GUI utilizzano la stessa Stringadi origine.Per implementare questo, specifica il "percorso" al Instance che vorresti sovrascrivere come valore del Contesto delle informazioni di traduzione:


<td width="36%">B</td>
<td width="18%">C</td>
<td width="12%">D</td>
<td width="18%">E</td>
</tr>
<tr>
<td>Chiave</td>
<td><b>Contesto</b></td>
<td>Fonte</td>
<td>Esempio</td>
<td>es</td>
</tr>
<tr>
<td />
<td>spazio di lavoro.ComputerScreen.SurfaceGui.TextLabel</td><td>Schermo</td>
<td />
<td>Pannello</td>
</tr>
<tr>
<td />
<td />
<td>Schermo</td>
<td />
<td>Zanzariera</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
A

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


local Players = game:GetService("Players")
local LocalizationService = game:GetService("LocalizationService")
local success, translator = pcall(function()
return LocalizationService:GetTranslatorForPlayerAsync(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 in-game Instance da utilizzare per l'annullamento del contesto come descritto sopra.Nota che questo argomento può essere arbitrario, ad esempio game , se non richiedi un Soprascriveredel contesto.

Valore predefinito: ""
text: string

Il testo della Fonte da cercare e tradurre.

Valore predefinito: ""

Restituzioni

Il testo tradotto.

Eventi