Tradução de Arquivos i18n
Arquivos de origem:
Aceita arquivos ZIP ou arquivos individuais: JSON, JSONC, XML, YAML, ARB, PO/POT, XLIFF, Properties, CSV/TSV, MD, TXT. O tamanho máximo é de 5 MB.
Idioma de origem: en-US (English, United States)
O código do idioma de origem. Exemplo: fr, fr-FR, fil, zh-Hans-CN. Digite para pesquisar.
Gerar e salvar glossário:
Traduzir apenas strings novas:
Indica se deve traduzir apenas strings novas ou reescrever strings existentes nos arquivos de destino.
Idiomas de destino:
de (German), zh-Hans-CN (Chinese, Simplified Chinese, China)
Gerar formas plurais:
Traduzir metadados:

Formatos de arquivo suportados

Nosso serviço de tradução de arquivos i18n suporta uma ampla gama de formatos de arquivo usados em diferentes plataformas e frameworks.

FormatoUsado por Suporta traduzir apenas strings novas Suporta comentários Suporta controle de tradução de metadados
JSON / JSONCJavaScript, TypeScript · i18next, React, Vue, Angular
XMLAndroid strings.xml · iOS plist · XML genérico · .NET ResX
YAML / YMLRuby on Rails · Node.js · Arquivos de configuração
ARBFlutter · Dart
PO / POTGNU Gettext · PHP, Python, WordPress, Ruby
XLIFFFerramentas CAT profissionais · Plataformas de localização · Angular
.propertiesJava · Spring Boot · Android
CSV / TSVPlanilhas · Fluxos de trabalho de localização personalizados
MDDocumentação · Arquivos README · Jekyll, Hugo, Docusaurus
TXTArquivos de texto simples usados para localização de aplicativos

Como traduzir arquivos i18n

Traduzir arquivos i18n é um processo direto fornecido pelo nosso serviço. Siga estas etapas para traduzir seus arquivos de internacionalização e garantir a consistência em seus projetos.

  1. Fazer upload de arquivos: Use a seção "Arquivos de origem" para enviar seus arquivos i18n ou um arquivo ZIP. Formatos suportados: JSON, JSONC, XML, YAML, ARB, PO/POT, XLIFF, Properties, CSV/TSV, MD, TXT. Se o nome do arquivo contiver um código de idioma, ele será usado automaticamente como idioma de origem.
  2. Definir idiomas de origem e destino:
    Escolha seu idioma de origem (por exemplo, en-US). Adicione um ou mais idiomas de destino (por exemplo, fr-FR, de-DE) e configure opções de tradução, como contrações, abreviações, terminologia e associações de arquivos.

    Importante: Se você ativar "Traduzir apenas strings novas", os arquivos de destino que você enviar já devem conter as strings traduzidas anteriormente para esse idioma (por exemplo, seu arquivo em francês já deve incluir todas as traduções antigas em francês). O sistema traduzirá então apenas as strings ausentes/não traduzidas.

    Se você simplesmente enviar o mesmo arquivo de origem como arquivo de destino (que não possui conteúdo em francês), nada será traduzido, porque não há como detectar quais strings são novas ou antigas.

    Nota: O envio de arquivos de destino é opcional. Se você não enviar nenhum arquivo de destino, todas as strings serão traduzidas, independentemente de "Traduzir apenas strings novas" estar ativado ou não.

    Regras de nomenclatura de arquivos:
    Se seus arquivos enviados não estiverem nomeados exatamente como códigos de idioma (por exemplo, fr.json, de.json), seus nomes devem corresponder aos nomes dos arquivos de origem para que o sistema saiba que eles contêm as mesmas strings em idiomas diferentes. Por exemplo:

    /en/common.json
    /fr/common.json
    /de/common.json

    Isso garante que as traduções fiquem alinhadas corretamente. Se os nomes dos arquivos forem diferentes do nome do arquivo de origem, o sistema os tratará como pertencentes a namespaces diferentes. Em i18n, um namespace é simplesmente um arquivo separado usado para organizar strings por partes do seu aplicativo (por exemplo: common.json para strings gerais, auth.json para login, dashboard.json para painel).

    Cada namespace deve ter um arquivo correspondente em cada pasta de idioma:

    /en/common.json
    /en/auth.json
    /fr/common.json
    /fr/auth.json

    Usar os mesmos nomes de arquivo para cada idioma garante que o sistema possa corresponder as strings corretamente.

  3. Iniciar tradução: Clique no botão "Traduzir" para começar. Nosso serviço gerencia cuidadosamente os arquivos para preservar a ordem das strings, evitando alterações desnecessárias. O progresso é exibido em tempo real.
  4. Baixar arquivos traduzidos: Após a conclusão da tradução, clique no botão "Baixar arquivos traduzidos" para recuperar seu conteúdo traduzido. O arquivo baixado é um arquivo ZIP nomeado com o ID do trabalho (por exemplo: 0196e881-fb54-7150-a292-5b1e8f70a8ae.zip). O arquivo contém arquivos traduzidos para cada idioma de destino, organizados em pastas separadas por código de idioma.

Por que nosso serviço de tradução i18n

  • Tradução contextual com tecnologia de IA: Nossa IA interpreta de forma inteligente os espaços reservados de formato i18n e adapta as traduções às normas culturais com base no idioma, script e região especificados no código do idioma.
  • Amplo suporte a formatos: Nosso serviço lida com todos os principais formatos de arquivo i18n. Ele gerencia com precisão formas plurais, preserva tags HTML e comentários, retém quebras de linha e mantém a estrutura de seus arquivos intacta.
  • Ajustes específicos de localidade: Números e datas no texto são convertidos automaticamente para corresponder ao formato da localidade de destino.
  • Tratamento de erros: Detectamos erros de IA e retraduzimos, se necessário, garantindo resultados de alta qualidade.
  • Custo-benefício: Nosso serviço é mais acessível do que outras soluções de tradução automática. Os usuários recebem 30,000 caracteres gratuitos mensalmente.Ver preços
  • Otimizado para arquivos grandes: Nosso sistema processa arquivos i18n grandes com eficiência, dividindo-os em partes gerenciáveis, garantindo que cada segmento caiba na janela de saída da IA. Essa abordagem mantém a consistência da tradução aproveitando terminologia e contexto predefinidos, mesmo para arquivos grandes.

Nossa plataforma simplifica a localização de seus arquivos i18n com tradução avançada por IA, entregando resultados precisos e eficientes enquanto preserva a estrutura e o contexto do seu arquivo.

O que é i18n? Internacionalização e localização explicadas

Internacionalização (i18n) é o processo de projetar software para que ele possa ser adaptado a diferentes idiomas e regiões sem alterações no código. Localização (l10n) é o processo de adaptar o software para uma localidade específica — traduzindo strings, ajustando formatos de data, moedas e referências culturais. O "18" em i18n representa as 18 letras entre o "i" e o "n" em "internationalization".

A tradução de arquivos i18n está no centro do fluxo de trabalho de localização. Em vez de codificar texto diretamente no código-fonte, os desenvolvedores externalizam todas as strings voltadas para o usuário em arquivos de recursos — JSON, YAML, PO, XLIFF, ARB ou arquivos Properties. Esses arquivos tornam-se a única fonte da verdade para todas as traduções e são gerenciados, versionados e implantados junto com o aplicativo.

Para produtos globais, os arquivos i18n podem precisar ser traduzidos para dezenas de idiomas. Gerenciar isso em escala requer automação, consistência e ferramentas que entendam o formato — que é exatamente o que nosso serviço de tradução de arquivos i18n com tecnologia de IA oferece.

Formatos de arquivo i18n: qual você deve usar?

A escolha do formato de arquivo i18n geralmente depende da sua pilha de tecnologia. Cada formato tem pontos fortes diferentes para estrutura, ferramentas e suporte à plataforma:

  • JSON — o formato mais popular para aplicativos web. Usado por i18next, React Intl, ngx-translate e Vue i18n. Suporta chaves aninhadas e interpolação. Recomendado para projetos React, Angular (ngx-translate), Vue e Next.js.
  • YAML — o formato nativo para i18n do Ruby on Rails e amplamente utilizado no Symfony (PHP) e Vue i18n. Legível por humanos com suporte para comentários, chaves aninhadas e strings de várias linhas.
  • PO / Gettext — o padrão para plugins WordPress, aplicativos PHP, Python (Django, Flask) e software de desktop Linux. Suporte integrado para formas plurais, comentários de tradutor e referências a arquivos de origem.
  • XLIFF — o padrão da indústria para fluxos de trabalho de tradução profissional. Usado pelo i18n nativo do Angular, iOS/Xcode e todas as principais ferramentas CAT (SDL Trados, memoQ, Memsource). Ideal para projetos corporativos que envolvem agências de tradução.
  • ARB — formato Application Resource Bundle do Flutter. Baseado em JSON com metadados de localização. O padrão para localização de aplicativos Flutter e Dart, compilado pelo flutter gen-l10n.
  • Properties — formato de localização nativo do Java. Usado pelo Spring Boot, Android (legado) e aplicativos Java corporativos com ResourceBundle.

Tradução incremental: traduza apenas strings novas

Um dos recursos mais poderosos do nosso serviço de tradução de arquivos i18n é a tradução incremental — a capacidade de traduzir apenas strings novas ou alteradas sem retraduzir o conteúdo que já está localizado. Isso reduz significativamente os custos de tradução e o tempo de processamento para projetos em desenvolvimento ativo.

Para usar a tradução incremental, carregue seu arquivo de origem e o arquivo de destino existente para cada idioma. Nosso sistema compara as chaves presentes em ambos os arquivos e traduz apenas as strings ausentes no destino. Isso é especialmente valioso durante ciclos de desenvolvimento contínuos, onde novas strings são adicionadas a cada sprint ou lançamento.

Os formatos suportados para tradução incremental estão listados na tabela acima. Para outros formatos, o envio de um arquivo de destino ainda é útil para o contexto do glossário, garantindo terminologia consistente em todas as execuções de tradução.

Casos de uso comuns para tradução de arquivos i18n

Nosso serviço de tradução de arquivos i18n lida com toda a gama de cenários modernos de localização:

  • Localização de aplicativos web: Traduza arquivos JSON, YAML e Properties para aplicativos de página única React, Angular, Vue, Next.js e Nuxt.js. O suporte para a estrutura de namespace do i18next permite traduzir todos os arquivos de idioma a partir de um único upload ZIP.
  • Localização de aplicativos móveis: Traduza arquivos ARB para aplicativos Flutter, arquivos Properties para Android e arquivos XLIFF exportados do Xcode para localização de aplicativos iOS e macOS.
  • Documentação e conteúdo: Traduza arquivos Markdown para geradores de sites estáticos como Docusaurus, VitePress, Jekyll e Hugo para entregar sites de documentação multilíngues.
  • Projetos WordPress e PHP: Traduza arquivos PO/POT para temas e plugins WordPress, aplicativos Symfony e outros projetos baseados em PHP usando localização baseada em gettext.
  • Aplicativos Angular: Traduza arquivos XLIFF 1.2 e 2.0 gerados pelo ng extract-i18n para o sistema de internacionalização nativo do Angular.
  • Fluxos de trabalho corporativos e CAT: Processe arquivos XLIFF trocados com agências de tradução profissionais e ferramentas CAT (SDL Trados, memoQ, Memsource) usando nossa tradução por IA que preserva a estrutura.
  • Projetos de código aberto: Traduza arquivos PO para projetos de código aberto baseados em GNU gettext, aplicativos de desktop (GTK/GNOME/KDE) e ferramentas de desenvolvedor distribuídas entre comunidades de idiomas.
  • Automação de CI/CD: Integre a tradução de arquivos i18n ao seu pipeline de lançamento usando a API REST do L10n.dev para traduzir automaticamente novas strings a cada merge ou implantação.

Perguntas frequentes

Quais formatos de arquivo i18n são suportados?

Suportamos JSON / JSONC, XML (Android strings.xml, .NET ResX, genérico), YAML / YML, ARB (Flutter), PO / POT (GNU Gettext), XLIFF 1.2 e 2.0, .properties (Java), CSV / TSV, Markdown (.md) e texto simples (.txt). Os arquivos podem ser enviados individualmente ou como um arquivo ZIP de até 5 MB.

Posso traduzir para vários idiomas ao mesmo tempo?

Sim. Você pode adicionar vários idiomas de destino em um único trabalho. Nosso serviço processa todos os pares de idiomas e empacota os resultados em um arquivo ZIP organizado por código de idioma (por exemplo, fr/, de/, ja/).

Como funciona o "Traduzir apenas strings novas"?

Envie seu arquivo de origem e o arquivo de destino existente (que já contém suas traduções anteriores) para cada idioma. Nosso sistema identifica as strings presentes na origem, mas ausentes no destino, e traduz apenas essas — evitando retraduzir conteúdo pelo qual você já pagou e impedindo substituições de edições manuais.

Qual é o tamanho máximo do arquivo?

O tamanho máximo de upload é de 5 MB por arquivo ou arquivo ZIP. Para projetos muito grandes, considere dividir os arquivos por namespace ou enviar vários trabalhos. Você pode monitorar o progresso do trabalho em tempo real nesta página e acessar todos os trabalhos concluídos na página Arquivos.

Como funciona o namespace de arquivos?

Arquivos com o mesmo nome em pastas de idiomas diferentes são tratados como o mesmo namespace (por exemplo, /en/common.json e /fr/common.json). Arquivos com nomes diferentes são tratados como namespaces separados. Use nomes de arquivo consistentes em todas as pastas de idioma para garantir a correspondência correta das strings.