Como traduzir um arquivo RTF: o que sobrevive e o que quebra
O que acontece com parágrafos, tabelas, notas de rodapé, links e formatação quando um arquivo RTF é traduzido, por que arquivos do TextEdit precisam de uma etapa extra e um verificador gratuito.

Para traduzir um arquivo RTF, envie o arquivo .rtf inteiro para um tradutor que leia RTF e depois confira o resultado. O BookTranslator aceita RTF. Ele lê o texto um parágrafo por vez, traduz e devolve um novo arquivo RTF e um arquivo RTF bilíngue. Colar o texto em uma janela de chat ou em um tradutor web também funciona para uma ou duas páginas, mas você perde o arquivo e precisa reconstruí-lo.
Há uma coisa a saber antes de enviar. O arquivo traduzido mantém suas palavras e seus parágrafos, mas não a formatação. Negrito, títulos, fontes, tabelas, links e imagens não voltam. Então o caminho certo depende do que há no seu arquivo e de qual aplicativo o salvou. Um manuscrito simples salvo no Word é o caso fácil. Um arquivo salvo pelo TextEdit no Mac precisa de uma etapa extra antes, ou todos os parágrafos ficam emendados.
Criamos três arquivos de teste e escrevemos um verificador gratuito que mostra o que há em um arquivo RTF antes de você enviá-lo e o que mudou depois. Rodamos os arquivos de teste em uma cópia local do código de leitura e escrita de RTF que o BookTranslator usa, com um marcador no lugar de um modelo, para você ver exatamente qual texto cada arquivo de teste envia para tradução e como o arquivo volta.
Resposta rápida: o que acontece com cada parte do arquivo
| Parte do arquivo | O que voltou no nosso teste | O que fazer |
|---|---|---|
Parágrafos terminados com \par (Word e a maioria dos aplicativos do Windows) | Um parágrafo traduzido para cada um | Nada |
| Parágrafos terminados com uma barra invertida e uma quebra de linha (TextEdit, outros aplicativos do Mac) | O arquivo inteiro enviado como um único parágrafo, sem espaço onde havia cada quebra | Converta o arquivo primeiro (veja o Passo 2) |
| Negrito, itálico, títulos, fontes, cores, alinhamento | Removidos. Todo parágrafo fica em Times New Roman 12 pontos | Formate novamente no Word ou traduza um DOCX |
| Tabelas | Texto das células unido sem espaço: StopTimeNorth pier7:05 | Traduza um DOCX |
| Notas de rodapé | O texto da nota de rodapé é adicionado ao fim do parágrafo; o número da nota desaparece | Recoloque as notas de rodapé manualmente ou traduza um DOCX |
| Cabeçalho da página | Torna-se um parágrafo comum onde está no arquivo (no topo, no nosso teste) | Exclua-o ou mantenha o cabeçalho original |
| Links | Texto do link mantido e traduzido, o endereço da web removido | Adicione os links novamente |
| Imagens | Removidas | Mantenha o arquivo original para a arte |
Caracteres acentuados e não latinos (café, 日本) | Lidos e gravados corretamente | Nada |
| Qualquer sequência de 20 ou mais caracteres de 0–9 e a–f (números de referência longos, hashes) | Excluídos antes da tradução | Verifique-os após a tradução (o verificador faz isso) |
O restante deste guia mostra de onde vem cada linha e o que fazer a respeito.
Etapa 1: Verifique qual tipo de RTF você tem
RTF é um formato de texto com códigos de formatação. Abra o arquivo em um editor de texto simples ou execute head -c 120 yourfile.rtf em um terminal e observe a primeira linha.
- Se contiver
\cocoartf, o arquivo foi salvo pelo sistema de texto da Apple: TextEdit ou outro aplicativo Mac que o utilize. - Se contiver
\rtf1\ansie não tiver\cocoartf, provavelmente é do Word, LibreOffice, WordPad ou da exportação de um aplicativo de escrita.
A diferença importa porque os dois tipos terminam um parágrafo de maneiras diferentes. O Word e a maioria dos outros processadores de texto gravam o código \par no final de cada parágrafo. O sistema de texto da Apple grava uma única barra invertida no final da linha. Ambos são RTF válidos: a especificação original de RTF da Microsoft de 1989 (cópia espelhada) diz que uma barra invertida seguida de uma quebra de linha é tratada da mesma forma que \par, e o próprio leitor da Apple mostra nosso arquivo de teste do TextEdit como parágrafos separados. O leitor de RTF do BookTranslator divide parágrafos apenas em \par. Verificamos isso no código em 3 de novembro de 2026 e no teste abaixo.
O verificador informa qual tipo você tem e o que mais há no arquivo. Ele precisa apenas do Python 3:
python3 check_rtf.py sample-word-style.rtf
No nosso arquivo de teste no estilo Word, ele imprimiu:
== sample-word-style.rtf
par_breaks: 7
table_cells: 4
table_rows: 2
hyperlinks: 1
fields: 1
bold_on: 2
italic_on: 1
page_breaks: 1
fonts: 2
footnotes: 1
headers: 1
images: 1
visible_paragraphs: 7
WARN 4 table cells: check that cell boundaries survive.
WARN 1 footnotes: check where this text ends up in the output.
WARN 1 headers: check where this text ends up in the output.
WARN 1 hyperlinks: the link text may survive without the URL.
WARN 1 images: keep the original for the artwork.
No arquivo do TextEdit, o primeiro aviso foi este:
WARN Paragraphs end with a backslash + line break (TextEdit/Cocoa style), not \par. Tools that only split on \par will see one long paragraph.
Se o verificador não exibir avisos, seus parágrafos, números e texto devem passar. Negrito, títulos e listas não geram aviso, mas ainda são removidos na rota RTF, então consulte a Etapa 2 se precisar deles.
O que voltou dos nossos arquivos de teste
Criamos três arquivos pequenos. Todos eles, e tudo o que voltou, estão na pasta de arquivos de teste.
- sample-word-style.rtf foi escrito à mão no estilo que o Word usa para RTF: quebras
\par, um cabeçalho de página, uma nota de rodapé, um link, uma tabela dois por dois, uma imagem pequena, uma quebra de página,caféescrito como caractere de página de código e日本escrito como códigos Unicode. - sample-textedit.rtf foi criado em um Mac com
textutil -convert rtf, que usa o mesmo sistema de texto do TextEdit. Ele tem um título, palavras em negrito e itálico, um link, uma lista com marcadores, uma tabela e uma linha com{braces}e barras invertidas. - sample-long-numbers.rtf tem uma referência de pedido de 20 dígitos, um hash de commit de 40 caracteres e um número de telefone.
Copiamos as funções de leitura e escrita de RTF do código de backend do BookTranslator em 3 de novembro de 2026 e as executamos em cada arquivo. Nenhum modelo foi usado. Cada parágrafo que seria enviado para tradução foi substituído por [ZH] mais o texto original. Isso mostra exatamente o que um modelo receberia e como o arquivo é reconstruído, sem o ruído de uma tradução real.
O arquivo no estilo Word: seis parágrafos limpos, com três surpresas
O arquivo voltou como seis parágrafos traduzidos, nesta ordem:
[ZH] Harbor Notes - Draft 2
[ZH] Chapter 3: The Harbor
[ZH] The ferry left at 6:40, an hour before the café opened. Timetable from the 1998 edition.
[ZH] Read the harbor map before you go.
[ZH] StopTimeNorth pier7:05
[ZH] Chapter 4: 日本 (Nihon)
A maior parte disso é o que você quer. Cada parágrafo foi enviado uma vez, em ordem, e café e 日本 sobreviveram à viagem dos códigos RTF para texto e de volta. As três surpresas:
- O cabeçalho de página virou o primeiro parágrafo. "Harbor Notes - Draft 2" era um cabeçalho impresso no topo de cada página. No arquivo traduzido, é texto do corpo.
- A nota de rodapé foi para dentro da frase. "Timetable from the 1998 edition." era uma nota de rodapé em "opened". Agora ela segue a frase como se fizesse parte dela, e o número da nota sumiu. Um modelo traduzindo esse parágrafo vê um texto corrido, e você precisa encontrar e mover a nota de rodapé de volta manualmente.
- As células da tabela se juntaram. As quatro células "Stop", "Time", "North pier" e "7:05" viraram a única string
StopTimeNorth pier7:05. Um modelo pode dividi-la no lugar errado ou traduzir "StopTime" como uma palavra só.
O arquivo traduzido não tem cabeçalho, nota de rodapé, tabela, endereço de link, imagem nem negrito. O modo de comparação do verificador na Etapa 4 lista tudo isso.
O arquivo do TextEdit: um parágrafo
O arquivo do TextEdit tem oito parágrafos visíveis. Todos foram enviados para tradução como um único parágrafo:
Chapter 3: The HarborThe ferry left at 6:40, an hour before the market opened.Read the harbor map before you go. • Bring cash • Keep your ticketStopTimeNorth pier7:05Ana said: "We'll wait {here}" and C:\Users\ana\notes stayed open.
Não há espaço onde cada parágrafo terminava: "HarborThe", "opened.Read". O arquivo traduzido também é um único parágrafo. Nosso arquivo de teste é curto. Em um livro real salvo pelo TextEdit, o arquivo inteiro vira um parágrafo. Antes da tradução, o BookTranslator corta parágrafos muito longos em pedaços de cerca de 6.000 caracteres (cerca de 2.000 para chinês, japonês ou coreano), nos finais de frase onde consegue encontrá-los. Esses cortes ainda caem em finais de frase dentro dos parágrafos, mas nunca nas quebras de parágrafo ausentes, porque "opened.Read" não parece um fim de frase. Quando cada parágrafo é uma única frase, como falas de diálogo ou itens de lista, os cortes podem cair em vírgulas ou espaços. O modelo nunca vê onde os parágrafos estavam, e você recebe de volta um bloco de texto.
As chaves e barras invertidas na última frase sobreviveram. Elas foram escapadas corretamente na saída, então o arquivo ainda abre.
Os números longos: excluídos antes da tradução
O terceiro arquivo voltou assim:
[ZH] Your order reference is and must be quoted in full.
[ZH] The fix landed in commit last week.
[ZH] Call +44 20 7946 0958 before 5 pm.
A referência de pedido e o hash de commit sumiram, com um espaço duplo onde cada um estava. O leitor remove qualquer sequência de 20 ou mais caracteres formada apenas pelos dígitos 0–9 e pelas letras a–f, porque é assim que dados de imagem embutidos aparecem em RTF. Um número longo no seu texto parece igual para ele. O número de telefone sobreviveu porque seus grupos de dígitos são curtos.
Isso importa principalmente para contratos, faturas, notas técnicas e registros com números de referência longos. O verificador lista cada string desse tipo no seu arquivo de origem e avisa se alguma estiver faltando após a tradução.
Etapa 2: Escolha a rota certa para o seu arquivo
Use a saída do verificador para escolher uma:
| O que o seu arquivo tem | Melhor caminho | Por quê |
|---|---|---|
Parágrafos simples, do Word ou de outro app que usa \par | Envie o RTF | Os parágrafos voltam um a um; você perde apenas a formatação de que não precisava |
Parágrafos simples, do TextEdit (\cocoartf) | Converta para DOCX ou TXT primeiro e depois envie esse arquivo | O leitor de RTF enviaria o arquivo inteiro como um único parágrafo |
| Títulos, tabelas, notas de rodapé ou formatação que você precisa manter | Salve como DOCX no Word ou no LibreOffice e depois envie o DOCX | O caminho do RTF reconstrói um arquivo simples; o DOCX passa pelo fluxo de trabalho do Word |
| Números de referência ou hashes longos | Qualquer um dos caminhos, depois confira | Confirme se todos os números voltaram |
Para converter um arquivo do TextEdit em um Mac, abra o Terminal e execute um destes comandos:
textutil -convert docx notes.rtf
textutil -convert txt notes.rtf
O primeiro grava notes.docx ao lado do original. Quando convertemos nosso arquivo de teste do TextEdit dessa forma, o DOCX tinha um parágrafo separado para cada linha e manteve as palavras em negrito e itálico. Não manteve a tabela, que virou parágrafos separados, nem o link. Se você precisa desses elementos, abra o arquivo no Word ou no LibreOffice e salve como DOCX por lá, depois confira a tabela antes de enviar. O segundo comando grava um arquivo de texto simples. Use-o quando você só precisa das palavras; nosso guia de tradução de texto simples cobre o que verificar em um arquivo TXT.
Para um documento do Word em que tabelas, estilos e cabeçalhos importam, veja nosso guia sobre traduzir um documento do Word mantendo a formatação. As perguntas frequentes do BookTranslator na página do tradutor de documentos dão o mesmo conselho para arquivos .doc antigos do Word: ele traduz o texto e retorna um arquivo RTF, e recomenda salvá-los como DOCX primeiro quando as imagens, tabelas ou o layout precisam ser mantidos.
Etapa 3: Traduza o arquivo inteiro
Envie o arquivo, escolha o idioma de destino e confira o preço antes de pagar. O BookTranslator traduz os parágrafos em ordem. Para um arquivo longo com nomes e termos recorrentes, ative a opção de glossário automático antes de pagar, para que sejam traduzidos da mesma forma em todo o documento.
Você recebe dois arquivos:
- O arquivo traduzido: cada parágrafo no idioma de destino.
- O arquivo bilíngue: cada parágrafo original seguido da sua tradução. Este é o arquivo mais rápido para revisão, porque você pode ler os dois lado a lado e identificar um parágrafo que foi pulado ou mal interpretado. No arquivo bilíngue do nosso teste do TextEdit, o documento inteiro aparece uma vez em inglês e depois uma vez com o marcador, o que é outra forma de ver o problema do parágrafo único.
Os dois arquivos são gravados como parágrafos simples em Times New Roman 12 pontos. Idiomas de destino com escrita da direita para a esquerda, como árabe e hebraico, são marcados como parágrafos da direita para a esquerda. Abra os arquivos no Word, LibreOffice ou TextEdit para lê-los e formatá-los.
Etapa 4: Verifique o arquivo traduzido
Execute o verificador com o arquivo de origem e a tradução:
python3 check_rtf.py sample-word-style.rtf sample-word-style-translated.rtf
Para o nosso arquivo no estilo Word, a seção de comparação exibiu:
== compare
CHANGED table_cells: 4 -> 0
CHANGED footnotes: 1 -> 0
CHANGED headers: 1 -> 0
CHANGED hyperlinks: 1 -> 0
CHANGED images: 1 -> 0
CHANGED bold_on: 2 -> 0
CHANGED italic_on: 1 -> 0
CHANGED page_breaks: 1 -> 0
CHANGED visible_paragraphs: 7 -> 6
Cada linha é uma tarefa para sua revisão. Aqui, a contagem de parágrafos passou de sete para seis porque as linhas da tabela se tornaram um único parágrafo. Para o arquivo de números longos, foram impressas duas linhas MISSING, uma para cada número que foi excluído. Para o arquivo do TextEdit, visible_paragraphs: 8 -> 1 é o sinal para voltar à Etapa 2.
O verificador conta a estrutura. Ele não consegue dizer se a tradução está boa. Leia o arquivo bilíngue, pelo menos as páginas iniciais e qualquer trecho com nomes, números ou diálogos.
Problemas comuns
Meu RTF traduzido é um único parágrafo longo. Seu arquivo de origem provavelmente veio do TextEdit ou de outro aplicativo do Mac. Execute o verificador no original. Se ele alertar sobre quebras de linha com barra invertida, converta o arquivo para DOCX ou TXT e traduza esse formato.
Algumas palavras estão grudadas, como "StopTime". Eram células de tabela. As tabelas RTF perdem os limites das células nesse caminho. Traduza uma cópia DOCX do arquivo se a tabela for importante.
Uma frase termina com um texto que não pertence a ela. Provavelmente é uma nota de rodapé. Encontre-a no original e mova a tradução de volta para uma nota de rodapé no Word.
Falta um número na tradução. Se ele tinha 20 ou mais caracteres de 0–9 e a–f, foi removido antes da tradução. Copie-o de volta do original. As linhas MISSING do verificador listam todos eles.
A formatação sumiu. Isso é esperado no caminho RTF: o arquivo é reconstruído com parágrafos simples. Se você precisa da formatação, traduza uma cópia DOCX ou aplique os estilos novamente após a tradução. Nossa comparação de ferramentas de tradução de DOCX aborda quais ferramentas mantêm a formatação do Word e com que eficácia.
Posso obter o resultado como DOCX? Não a partir de um upload de RTF; RTF entra, RTF sai. Converta o original para DOCX antes de fazer o upload, e o resultado volta como DOCX.
Posts Relacionados





