Formatos de archivos de recursos compatibles para la traducción con PTC
PTC (Private Translation Cloud) traduce los archivos de recursos que almacenan el texto de su software (etiquetas de aplicaciones, mensajes de error, texto de onboarding y contenido del usuario), dejando intactas las claves, la estructura y el código.
Elija un formato a continuación para ir a un ejemplo práctico de su archivo de origen, su forma traducida y un enlace a la guía paso a paso para ese formato.
Gettext.pot · .po
JSON.json
YAML.yaml · .yml
Android Strings.xml
Apple Strings.strings
Apple Stringsdict.stringsdict
Apple String Catalogs.xcstrings
Apple Property List.plist
Java Properties.properties
CSV.csv
XLIFF.xliff
Gettext (.pot, .po)
Gettext divide la traducción en dos archivos. La plantilla .pot enumera cada cadena traducible en el idioma de origen, y cada archivo .po empareja esas cadenas con su traducción para un idioma de destino.
Se utiliza para: temas y plugins de WordPress e internacionalización de Python.
Estructura: cada entrada tiene un msgid (la cadena original) y un msgstr (su traducción). PTC rellena cada msgstr vacío y nunca cambia el msgid.
Archivo de origen
msgid "Hello, world!"
msgstr ""
Archivo traducido
msgid "Hello, world!"
msgstr "¡Hola, mundo!"
Cómo traducir archivos PO y POT
JSON (.json)
JSON almacena el texto traducible como pares clave-valor, donde cada clave identifica una cadena y el valor contiene el texto a traducir. PTC traduce los valores y mantiene intacta cada clave.
Se utiliza para: aplicaciones web (React, Angular, Vue.js) y aplicaciones móviles (iOS, Android).
Archivo de origen
{
"welcome_message": "Welcome to our app!",
"error_message": "Something went wrong. Please try again."
}
Archivo traducido
{
"welcome_message": "¡Bienvenido a nuestra aplicación!",
"error_message": "Algo salió mal. Inténtalo de nuevo."
}
JSON también almacena cadenas relacionadas (como una lista de pasos) en arrays. PTC traduce cada elemento y conserva el orden del array.
Archivo de origen
{
"steps": [
"Open the app.",
"Log in to your account.",
"Select your profile."
]
}
Archivo traducido
{
"steps": [
"Abre la aplicación.",
"Inicia sesión en tu cuenta.",
"Selecciona tu perfil."
]
}
YAML (.yaml, .yml)
YAML contiene texto traducible en un conjunto limpio y sangrado de pares clave-valor. Cada clave nombra una cadena y su valor contiene el texto. PTC traduce los valores y mantiene la sangría y las claves exactamente como estaban.
Se utiliza para: aplicaciones Ruby on Rails, generadores de sitios estáticos (Jekyll, Hugo) y configuración de pipelines de CI/CD.
Archivo de origen
welcome_message: "Welcome to our app!"
error_message: "Something went wrong. Please try again."
Archivo traducido
welcome_message: "¡Bienvenido a nuestra aplicación!"
error_message: "Algo salió mal. Inténtalo de nuevo."
Cómo traducir aplicaciones Ruby on Rails
Android Strings (.xml)
Android envuelve cada cadena traducible en una etiqueta <string> identificada por un nombre único. PTC traduce el texto dentro de las etiquetas y mantiene cada nombre sin cambios.
Se utiliza para: aplicaciones móviles Android (cadenas de la interfaz y mensajes).
Archivo de origen
<resources>
<string name="welcome_message">Welcome to our app!</string>
<string name="error_message">Something went wrong. Please try again.</string>
</resources>
Archivo traducido
<resources>
<string name="welcome_message">¡Bienvenido a nuestra aplicación!</string>
<string name="error_message">Algo salió mal. Inténtalo de nuevo.</string>
</resources>
Cómo localizar aplicaciones Android
Apple Strings (.strings)
Un archivo .strings de Apple es una lista simple de pares clave-valor donde la clave es el texto original y el valor contiene la traducción. Los comentarios sobre una entrada brindan contexto a los traductores. Los archivos utilizan la codificación UTF-16 de forma predeterminada y se pueden convertir a UTF-8.
Se utiliza para: aplicaciones de iOS y macOS (cadenas de la interfaz y mensajes del sistema).
Archivo de origen
/* Welcome message shown on the home screen */
"welcome_message" = "Welcome to our app!";
/* Error message when something goes wrong */
"error_message" = "Something went wrong. Please try again.";
Archivo traducido
/* Welcome message shown on the home screen */
"welcome_message" = "¡Bienvenido a nuestra aplicación!";
/* Error message when something goes wrong */
"error_message" = "Algo salió mal. Inténtalo de nuevo.";
Cómo localizar aplicaciones de iOS
Apple Stringsdict (.stringsdict)
Un archivo .stringsdict procesa plurales y otros textos basados en recuentos que un archivo .strings plano no puede. Utiliza diccionarios anidados para definir una cadena diferente para cada categoría de plural, y PTC traduce cada forma plural para el idioma de destino.
Se utiliza para: aplicaciones de iOS y macOS que necesitan formas plurales, contenido dinámico o texto basado en el género.
Archivo de origen
<plist version="1.0">
<dict>
<key>apples_count</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@apples@</string>
<key>apples</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d apple</string>
<key>other</key>
<string>%d apples</string>
</dict>
</dict>
</dict>
</plist>
Archivo traducido
<plist version="1.0">
<dict>
<key>apples_count</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@apples@</string>
<key>apples</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>one</key>
<string>%d manzana</string>
<key>other</key>
<string>%d manzanas</string>
</dict>
</dict>
</dict>
</plist>
Cómo localizar aplicaciones de iOS
Apple String Catalogs (.xcstrings)
Los String Catalogs son el formato moderno de Apple que mantiene cada idioma en un archivo .xcstrings basado en JSON. Cada entrada contiene la cadena de origen más una localización anidada por idioma, y puede llevar notas para desarrolladores, reglas de plurales y marcadores de posición. PTC añade cada idioma de destino como una nueva localización junto al origen.
Se utiliza para: cualquier aplicación de la plataforma Apple dirigida a iOS 15 / macOS 12 / tvOS 15 / watchOS 8 / visionOS 1 o posterior.
Archivo de origen
{
"sourceLanguage" : "en",
"strings" : {
"welcome_message" : {
"extractionState" : "extracted_with_value",
"localizations" : {
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Welcome to our app!"
}
}
}
}
},
"version" : "1.0"
}
Archivo traducido
{
"sourceLanguage": "en",
"strings": {
"welcome_message": {
"extractionState": "extracted_with_value",
"localizations": {
"en": {
"stringUnit": {
"state": "translated",
"value": "Welcome to our app!"
}
},
"es": {
"stringUnit": {
"state": "translated",
"value": "¡Bienvenido a nuestra app!"
}
}
}
}
},
"version": "1.0"
}
Cómo localizar aplicaciones de iOS
Apple Property List (.plist)
Un archivo .plist almacena texto simple en formato de pares clave-valor en el formato basado en XML de Apple. A diferencia de un archivo Stringsdict, contiene cadenas simples sin lógica de plurales, por lo que es adecuado para textos de interfaz de usuario y valores de configuración directos. PTC traduce cada valor y conserva las claves.
Se utiliza para: aplicaciones de iOS y macOS (texto de la interfaz y ajustes de configuración).
Archivo de origen
<plist version="1.0">
<dict>
<key>welcome_message</key>
<string>Welcome to our app!</string>
<key>error_message</key>
<string>Something went wrong. Please try again.</string>
</dict>
</plist>
Archivo traducido
<plist version="1.0">
<dict>
<key>welcome_message</key>
<string>¡Bienvenido a nuestra aplicación!</string>
<key>error_message</key>
<string>Algo salió mal. Inténtalo de nuevo.</string>
</dict>
</plist>
Cómo localizar aplicaciones de iOS
Java Properties (.properties)
Un archivo .properties de Java enumera un par key=value por línea, donde la clave identifica una cadena y el valor contiene el texto. PTC traduce los valores y mantiene las claves. Los archivos utilizan ISO-8859-1 de forma predeterminada y admiten UTF-8 para un rango de caracteres más amplio.
Se utiliza para: aplicaciones web y de escritorio en Java (elementos de la interfaz, mensajes de error y avisos del sistema).
Archivo de origen
welcome_message=Welcome to our app!
error_message=Something went wrong. Please try again.
Archivo traducido
welcome_message=¡Bienvenido a nuestra aplicación!
error_message=Algo salió mal. Inténtalo de nuevo.
Cómo traducir archivos .properties de Java
CSV (.csv)
Un archivo CSV contiene un par clave-valor por fila: la primera columna es la clave o cadena original, y la segunda columna contiene la traducción. PTC traduce la segunda columna y mantiene intactas las claves y los delimitadores.
Se utiliza para: descripciones de productos y etiquetas de la interfaz de Magento y Adobe Commerce, y la importación/exportación masiva de datos de localización en plataformas de comercio electrónico.
Archivo de origen
"welcome_message","Welcome to our store!"
"error_message","Something went wrong. Please try again."
Archivo traducido
"welcome_message","¡Bienvenido a nuestra tienda!"
"error_message","Algo salió mal. Inténtalo de nuevo."
XLIFF (.xliff)
XLIFF es un formato de intercambio estándar que empareja cada cadena de origen con su traducción dentro de un <trans-unit>. PTC rellena cada <target> vacío y deja el <source> y los identificadores de unidades sin cambios.
Se utiliza para: la localización de software y sitios web, sistemas TMS y sistemas CMS o herramientas de creación.
Archivo de origen
<xliff version="1.2">
<file source-language="en">
<body>
<trans-unit id="1">
<source>Hello, world!</source>
<target></target>
</trans-unit>
</body>
</file>
</xliff>
Archivo traducido
<xliff version="1.2">
<file source-language="en" target-language="es">
<body>
<trans-unit id="1">
<source>Hello, world!</source>
<target>¡Hola, mundo!</target>
</trans-unit>
</body>
</file>
</xliff>
Traduzca sus archivos de recursos con PTC
Una vez que comience una prueba de 30 días, traducir sus archivos de recursos con PTC es sencillo. Traduzca hasta 20.000 palabras a 2 idiomas. Cuando necesite más, active el precio de pago al consumo para obtener traducciones ilimitadas a un número ilimitado de idiomas (solo paga por lo que traduce).
Usted elige cómo gestionar las traducciones y proporcionar contexto, y PTC ofrece traducciones con calidad humana a velocidad y coste de máquina.
Obtenga más información en nuestra Guía de inicio.