LocalizationTable
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Un LocalizationTable è un database di traduzioni. Contiene stringhe di origine e traduzioni per varie lingue. È utilizzato con il Translator e il LocalizationService sistema di auto-traduzione per controllare le traduzioni di testo nel Gioco. Le tabelle di localizzazione sono progettate per essere trattate come risorse
Ingressi della tabella di localizzazione
Ogni tavolo di localizzazione contiene un insieme di entrate. Ogni ingresso contiene le traduzioni del testo, oltre a alcuni campi speciali:
- Key è una chiave opzionale unica per lookup di hashing rapidi in codice. Se non è vuota deve essere unica nel tabella.
- La fonte è il testo originale nella lingua di origine che verrà utilizzato dal sistema di sostituzione automatico Class.LocalizationService per corrispondere al testo GUI e rendere una traduzione invece. Il campo Fonte può essere riempito dalle strumente di cattura del testo, o può essere impostato manualmente. Per
- Il contexto è il nome completo dell'istanza per l'oggetto su cui il testo è apparso. Il contexto viene utilizzato per la disambigua dal sistema di sostituzione del testo automatico. Quando vengono trovati più corrispondenti per la fonte, il sistema sceglierà il migliore corrispondente facendo matchback dall'end del testo della Stringa. Ci sono anche altri modi più robusti per gestire la disambigua disponibili, come util
- L'esempio è qualsiasi cosa tu voglia che sia. Se lo strumento di cattura del testo indovina alcuni parametri per una stringa, l'esempio campo contiene un esempio di loro usati in contesto.
Tutti questi campi sono opzionali, ma almeno uno dei due campi deve essere non vuoto. Non possono esserci due registri con gli stessi chiavi, sorgenti e contesti.
Vedi Traduzione del contenuto dinamico per ulteriori informazioni.
Campioni di codice
local LocalizationService = game:GetService("LocalizationService")
local function createLocalizationTable(entries)
local localTable = Instance.new("LocalizationTable")
localTable.DevelopmentLanguage = LocalizationService.SystemLocaleId
localTable:SetEntries(entries)
return localTable
end
local entries = {
{
Key = "Hello_World", -- The 'expressionKey' to be used with GetString
Values = { -- A dictionary of keys corresponding to IETF language tags, and their translations.
["ru"] = " !", -- Russian
["fr"] = "Bonjour le monde!", -- French
["de"] = "Hallo Welt!", -- German
["en-US"] = "Hello world!", -- English
["it"] = "Ciao mondo!", -- Italian
["pt-BR"] = "Ol Mundo!", -- Portuguese
["ja"] = "", -- Japanese
["es"] = "Hola Mundo!", -- Spanish
}
}
}
local helloWorldTable = createLocalizationTable(entries)
print(helloWorldTable:GetString("en-US", "Hello_World"))
Sommario
Proprietà
Il locale delle stringhe di origine.
Metodi
Restituisce un array di dizionari, in cui ogni dizionario rappresenta un'entry di dati di localizzazione.
Restituisce un Translator per gli elementi in questa tavola di localizzazione, nella lingua specificata.
Rimuove un elemento dalla tabella di localizzazione, utilizzando il key specificato, source e context per restringere l'elemento specifico da rimuovere.
Rimuove una sola traduzione di lingua dalla Tabella di localizzazione, utilizzando il key fornito, source , context , 2> Context2> e 5> localId5> per ridurre l'entrata specifica da rimuovere.
Rimuove tutte le traduzioni dalla Tabella di localizzazione con l'ID della lingua specificato.
Imposta i contenuti della Tabella di localizzazione.
Imposta il campo Contesto di un'entrata di LocalizationTable su newContext , utilizzando il key specificato, 1> Sorgente1> e 4> text4> per restringere l'entrata che avrà questo cambiamento applicato.
Imposta il campo Esempio di una riga di un tavolo di localizzazione su example , utilizzando il key specificato, 1> Sorgente1> e 4> context4> per restringere l'entrata che avrà questo cambiamento applicato.
Imposta il campo Chiave di una riga di tavola localizzazione su newKey , utilizzando il key specificato , 1> Sorgente1> e 4> context4> per ridurre l'ingresso che avrà questo cambiamento applicato.
Imposta il campo Fonte di una riga di tavolo di localizzazione su newSource , utilizzando il key specificato, 1> Sorgente1> e 4> context4> per restringere l'elemento che avrà questo cambiamento applicato.
Imposta il testo della specifica localeId in una voce di tavola di localizzazione, utilizzando il key specificato, source e context per restringere l'elemento che avrà questo cambiamento applicato.
Proprietà
SourceLocaleId
La lingua Roblox delle stringhe di input per questa tabella, ad esempio "en-us" o "es-es." Questo è tipicamente il "lingue di sviluppo" del Gioco. Per un Translator che unisce più oggetti di tavola di localizzazione, è il LocaleId della tabella di localizzazione predefinita. Le predefinizioni sono "en-us".
Metodi
GetEntries
La funzione GetCommands restituisce un array di dizionari contenuti in un determinato LocalizationTable , in cui ogni dizionario rappresenta un'entrata di dati di localizzazione.
Per impostare le entradi di un LocalizationTable, puoi usare LocalizationTable:SetEntries() .
Ogni dizionario nell' array contiene i seguenti campi:
<tbody><tr><td><b>Chiave</b></td><td><code>Library.string</code></td><td>Una chiave di ricerca per questo specifico record nella Tabella di localizzazione.</td></tr><tr><td><b>Fonte</b></td><td><code>Library.string</code></td><td>La stringa utilizzata per formattare la Stringalocalizzata. Utilizzata come ricerca se non viene fornito una chiave.</td></tr><tr><td><b>Contesto</b></td><td><code>Library.string</code></td><td>Un <code>Class.Instance:GetFullName()</code> per l'oggetto che è stato utilizzato per generare la Tabella di localizzazione. Utilizzato come riferimento se non è fornito una chiave.</td></tr><tr><td><b>Esempio</b></td><td><code>Library.string</code></td><td>La stringa usata per formattare la Localizzazione. Opzionale.</td></tr><tr><td><b>Valori</b></td><td><code>Dizionario</code></td><td>Un dizionario delle traduzioni di linguaggio per questa voce di localizzazione. Le chiavi di questo dizionario sono gli ID della lingua e i valori sono stringhe che vengono utilizzate per applicare la localizzazione per la lingua corrispondente all'ID della lingua.</td></tr></tbody>
Indice | Tipo | Descrizione |
---|
Restituzioni
Un array di dizionari, in cui ogni dizionario rappresenta un'entrata di dati di localizzazione.
Campioni di codice
local LocalizationService = game:GetService("LocalizationService")
local localizationTable = LocalizationService:FindFirstChild("LocalizationTable")
local entries = {
{
["Key"] = "0001",
["Source"] = "en-us",
["Values"] = {
["0001"] = "Hello Muddah, hello Fadduh.",
["0002"] = "Here I am at Camp Granada.",
["0003"] = "Camp is very entertaining.",
["0004"] = "And they say we'll have some fun if it stops raining.",
},
},
}
localizationTable:SetEntries(entries)
local get_results = localizationTable:GetEntries()
for _index, dict in pairs(get_results) do
for _key, value in pairs(dict["Values"]) do -- Loop through every key, value pair in the dictionary to print our strings
print(value)
end
end
GetTranslator
Restituisce un Translator per gli elementi in questa tabella di localizzazione, nella lingua specificata. Il traduttore cercherà prima in questa tabella e poi guarderà nelle tabelle antenate.
Parametri
Restituzioni
RemoveEntry
Rimuove un elemento dalla tabella di localizzazione, utilizzando il key specificato, source e context per restringere l'elemento specifico da rimuovere.
Parametri
Restituzioni
RemoveEntryValue
Rimuove una sola traduzione di lingua dalla Tabella di localizzazione, utilizzando il key fornito, source , context , 2> Context2> e 5> localId5> per ridurre l'entrata specifica da rimuovere.
Parametri
Restituzioni
RemoveTargetLocale
Rimuove tutte le traduzioni dalla Tabella di localizzazione con l'ID della lingua specificato.
Parametri
Restituzioni
SetEntries
Imposta i contenuti della Tabella di localizzazione.
Il parametro delle entradi dovrebbe essere un'arrangione di dizionari nello stesso formato della funzione LocalizationTable:GetEntries() .
Parametri
Restituzioni
SetEntryContext
Imposta il campo Contesto di un'entrata di LocalizationTable su newContext , utilizzando il key specificato, 1> Sorgente1> e 4> text4> per restringere l'entrata che avrà questo cambiamento applicato.
Parametri
Restituzioni
SetEntryExample
Imposta il campo Esempio di una riga di un tavolo di localizzazione su example , utilizzando il key specificato, 1> Sorgente1> e 4> context4> per restringere l'entrata che avrà questo cambiamento applicato.
Parametri
Restituzioni
SetEntryKey
Imposta il campo Chiave di una riga di tavola localizzazione su newKey , utilizzando il key specificato , 1> Sorgente1> e 4> context4> per ridurre l'ingresso che avrà questo cambiamento applicato.
Parametri
Restituzioni
SetEntrySource
Imposta il campo Fonte di una riga di tavolo di localizzazione su newSource , utilizzando il key specificato, 1> Sorgente1> e 4> context4> per restringere l'elemento che avrà questo cambiamento applicato.
Parametri
Restituzioni
SetEntryValue
Imposta il testo della specifica localeId in una voce di tavola di localizzazione, utilizzando il key specificato, source e context per restringere l'elemento che avrà questo cambiamento applicato.