Translator
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
El papel de un Traductor es producir/返回 textos localizados para el jugador de visualización. Se puede usar para recuperar textos localizados para la vista del jugador de un LocalizationTable . La fuente de la propiedad Translator.LocaleId , el conjunto de tablas que buscará y el orden en que las buscará depende del método que se usó para crear la instancia del Traductor.
La entrada para un traductor es la cadena de lenguaje de desarrollo original y un contexto, donde todo o parte del contexto se puede usar para encontrar una traducción más precisa / situacional para la cadena de cadenas de desarrollo.
El traductor también se puede utilizar para fabricar cuerdas traducidas con inserciones (reemplazos de datos) que pueden cambiar el orden según el idioma objetivo.
Resumo
Propriedades
El idioma de las cadenas traducidas.
Métodos
Devuelve la cadena de texto localizado en un LocalizationTable basado en su ubicación Translator, por clave.
Devuelve la cadena de texto localizada en un LocalizationTable basado en su ubicación de Translator por búsqueda de fuentes.
Propriedades
LocaleId
El idioma de Roblox de las cadenas de salida traducidas de esta tabla, por ejemplo "en-us" o "es-es". Por defecto, "en-us".
Métodos
FormatByKey
Devuelve la cadena de texto localizada en un LocalizationTable basado en su Translator ubicación, por clave. La tabla de argumentos opcional se usa para llenar parámetros de formato en la entrada de texto correspondiente.
Nota que este método lanzará un error en los siguientes casos:
- Si ninguno de los LocalizationTables disponibles para este Translator incluye un valor para la clavedada.
- Si el formato de la cadena para la llave usa parámetros numéricos y argumentos no es un matriz/lista.
- Si el formato de cuerda de formato usa parámetros y arge no es una tabla de pares de valores de llave.
- Si args no son valores para parámetros que se usan en la cadena de formato de formato coincidente.
Vea Localizando con Scripting para más detalles y ejemplos de uso de esta función.
Parâmetros
El valor de la Clave para buscar y traducir.
Se proporcionará si el texto de la fuente y las traducciones contienen valores de formato. Será una tabla Lua de valores o pares de valores de la llave, dependiendo de si los valores de formato estén numerados o nombrados.
Devolução
Translate
Devuelve la cadena de texto localizado en un LocalizationTable basado en su ubicación Translator . Esta cadena estará en el contexto del objeto proporcionado, dado el texto de fuente proporcionado.
Vea Localizando con Scripting para más detalles y ejemplos de uso de esta función.
Anulación de contexto
En algunos casos, las cadenas de texto duplicadas pueden tener traducciones completamente diferentes en otros idiomas. Por ejemplo, la palabra inglesa "Pantalla" puede indicar tanto una pantalla de ordenador como una pantalla de ventana, pero las traducciones de español son completamente diferentes:
<tr><td>Clave</td><td>Contexto</td><td><b>Fuente</b></td><td>Ejemplo</td><td><b>es</b></td></tr><tr><td /><td /><td>Pantallas</td><td /><td>Pantalla</td></tr><tr><td /><td /><td>Pantallas</td><td /><td>Repelente</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
Un | B | C | D | E |
En estos casos, el primer argumento a esta función —aún no disponible en el juego— puede usarse como "rompedor de empate" cuando varios objetos de GUI usan la misma cadena de fuentes. Para implementar esto, especifique el "camino" a la Instance que desea implementar como el valor de contexto de los datos de traducción:
<tr><td>Clave</td><td><b>Contexto</b></td><td>Fuente</td><td>Ejemplo</td><td>es</td></tr><tr><td /><td>espacio de trabajo.ComputerScreen.SurfaceGui.TextLabel</td><td>Pantallas</td><td /><td>Pantalla</td></tr><tr><td /><td /><td>Pantallas</td><td /><td>Repelente</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
Un | B | C | D | E |
Luego, cuando se llama esta función en un script, pase el mismo Instance que el primer argumento, seguido por el texto de búsqueda de la fuente como el segundo argumento:
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
Parâmetros
Un Instance de juego válido para usar como argumento de anulación de contexto como se describe anteriormente. Nota que este argumento puede ser arbitrario, por ejemplo game, si no requiere un argumento de invalidar/reemplazarcontexto.
El texto de La fuente para buscar y traducir.
Devolução
El texto traducido.