Como traduzir um ficheiro RTF: o que se mantém e o que se perde
O que acontece a parágrafos, tabelas, notas de rodapé, ligações e formatação quando se traduz um ficheiro RTF, porque é que os ficheiros do TextEdit precisam de um passo extra e um verificador gratuito.

Para traduzir um ficheiro RTF, carregue o ficheiro .rtf completo para um tradutor que leia RTF e depois verifique o resultado. O BookTranslator aceita RTF. Lê o texto parágrafo a parágrafo, traduz e devolve um novo ficheiro RTF e um ficheiro RTF bilingue. Colar o texto numa janela de chat ou num tradutor web também funciona para uma ou duas páginas, mas perde o ficheiro e tem de o reconstruir.
Há uma coisa a saber antes de carregar. O ficheiro traduzido mantém as suas palavras e os seus parágrafos, mas não a formatação. O negrito, os títulos, os tipos de letra, as tabelas, as ligações e as imagens não voltam. Por isso, o caminho certo depende do que está no ficheiro e da aplicação que o guardou. Um manuscrito simples guardado a partir do Word é o caso fácil. Um ficheiro guardado pelo TextEdit num Mac precisa primeiro de um passo extra, ou todos os parágrafos ficam juntos.
Criámos três ficheiros de teste e escrevemos um verificador gratuito que mostra o que está num ficheiro RTF antes de o carregar e o que mudou depois. Passámos os ficheiros de teste por uma cópia local do código de leitura e escrita de RTF que o BookTranslator utiliza, com um marcador no lugar de um modelo, para que possa ver exatamente que texto cada ficheiro de teste envia para tradução e como o ficheiro regressa.
Resposta rápida: o que acontece a cada parte do ficheiro
| Parte do ficheiro | O que voltou no nosso teste | O que fazer |
|---|---|---|
Parágrafos terminados com \par (Word e a maioria das aplicações Windows) | Um parágrafo traduzido por cada um | Nada |
| Parágrafos terminados com uma barra invertida e uma quebra de linha (TextEdit, outras aplicações Mac) | O ficheiro inteiro enviado como um único parágrafo, sem espaço onde estava cada quebra | Converta primeiro o ficheiro (ver Passo 2) |
| Negrito, itálico, títulos, tipos de letra, cores, alinhamento | Removidos. Todos os parágrafos ficam 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 seu parágrafo; o número da nota desaparece | Mova as notas de rodapé de volta manualmente ou traduza um DOCX |
| Cabeçalho da página | Torna-se um parágrafo normal no local onde se encontra no ficheiro (no topo, no nosso teste) | Elimine-o ou mantenha o cabeçalho original |
| Ligações | Texto da ligação mantido e traduzido, o endereço web removido | Adicione novamente as ligações |
| Imagens | Removidas | Mantenha o ficheiro original para as ilustrações |
Caracteres acentuados e não latinos (café, 日本) | Lidos e escritos corretamente | Nada |
| Qualquer sequência de 20 ou mais caracteres de 0–9 e a–f (números de referência longos, hashes) | Eliminados antes da tradução | Verifique se existem após a tradução (o verificador faz isto) |
O resto deste guia mostra de onde vem cada linha e o que fazer em relação a ela.
Passo 1: Verifique que tipo de RTF tem
O RTF é um formato de texto com códigos de formatação incorporados. Abra o ficheiro num editor de texto simples ou execute head -c 120 yourfile.rtf num terminal e observe a primeira linha.
- Se contiver
\cocoartf, o ficheiro foi guardado pelo sistema de texto da Apple: TextEdit ou outra aplicação Mac que o utilize. - Se contiver
\rtf1\ansie não contiver\cocoartf, é muito provavelmente do Word, LibreOffice, WordPad ou da exportação de uma aplicação de escrita.
A diferença é importante porque os dois tipos terminam um parágrafo de formas diferentes. O Word e a maioria dos outros processadores de texto escrevem o código \par no final de cada parágrafo. O sistema de texto da Apple escreve, em vez disso, 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) indica que uma barra invertida seguida de uma quebra de linha é tratada da mesma forma que \par, e o próprio leitor da Apple mostra o nosso ficheiro de teste do TextEdit como parágrafos separados. O leitor de RTF do BookTranslator divide os parágrafos apenas em \par. Verificámos isto no seu código a 3 de novembro de 2026 e no teste abaixo.
O verificador indica-lhe que tipo tem e o que mais existe no ficheiro. Requer Python 3 e nada mais:
python3 check_rtf.py sample-word-style.rtf
No nosso ficheiro de teste ao estilo do Word, 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 ficheiro 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 apresentar avisos, os seus parágrafos, números e texto devem passar corretamente. O negrito, os cabeçalhos e as listas não geram avisos, mas continuam a ser removidos na via RTF, por isso consulte o Passo 2 se precisar deles.
O que os nossos ficheiros de teste devolveram
Criámos três ficheiros pequenos. Todos eles, e tudo o que foi devolvido, estão na pasta de ficheiros 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é, uma ligação, uma tabela de dois por dois, uma imagem pequena, uma quebra de página,caféescrito como caráter de página de código e日本escrito como códigos Unicode. - sample-textedit.rtf foi criado num Mac com
textutil -convert rtf, que usa o mesmo sistema de texto que o TextEdit. Tem um cabeçalho, palavras em negrito e itálico, uma ligação, uma lista com marcas, uma tabela e uma linha com{braces}e barras invertidas. - sample-long-numbers.rtf tem uma referência de encomenda com 20 dígitos, um hash de commit com 40 caracteres e um número de telefone.
Copiámos as funções de leitura e escrita de RTF do código de backend do BookTranslator a 3 de novembro de 2026 e executámo-las em cada ficheiro. Não foi usado nenhum modelo. 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 ficheiro é reconstruído, sem o ruído de uma tradução real.
O ficheiro ao estilo do Word: seis parágrafos limpos, com três surpresas
O ficheiro foi devolvido 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 disto é o que se pretende. Cada parágrafo foi enviado uma vez, por 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 tornou-se o primeiro parágrafo. "Harbor Notes - Draft 2" era um cabeçalho que era impresso no topo de cada página. No ficheiro traduzido, é texto do corpo.
- A nota de rodapé passou para dentro da frase. "Timetable from the 1998 edition." era uma nota de rodapé sobre "opened". Agora segue a frase como se fizesse parte dela, e o número da nota de rodapé desapareceu. Um modelo que traduza esse parágrafo vê um único texto corrido, e terá de encontrar e repor a nota de rodapé à mão.
- As células da tabela juntaram-se. As quatro células "Stop", "Time", "North pier" e "7:05" tornaram-se na cadeia única
StopTimeNorth pier7:05. Um modelo pode dividi-la no sítio errado, ou traduzir "StopTime" como uma só palavra.
O ficheiro traduzido não tem cabeçalho, nem nota de rodapé, nem tabela, nem endereço de ligação, nem imagem, nem negrito. O modo de comparação do verificador no Passo 4 lista tudo isso.
O ficheiro do TextEdit: um parágrafo
O ficheiro do TextEdit tem oito parágrafos visíveis. Todos eles 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 ficheiro traduzido também é um único parágrafo. O nosso ficheiro de teste é curto. Num livro real guardado pelo TextEdit, o ficheiro inteiro torna-se um único parágrafo. Antes da tradução, o BookTranslator corta os 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 fins de frase que conseguir encontrar. Esses cortes continuam a cair em fins de frase dentro dos parágrafos, mas nunca nas quebras de parágrafo em falta, porque "opened.Read" não se parece com um fim de frase. Quando cada parágrafo é uma única frase, como linhas de diálogo ou itens de lista, os cortes podem cair em vírgulas ou espaços. O modelo nunca vê onde estavam os parágrafos, e recebe de volta uma parede de texto.
As chavetas e as barras invertidas na última frase sobreviveram. Foram escapadas corretamente à saída, por isso o ficheiro ainda abre.
Os números longos: eliminados antes da tradução
O terceiro ficheiro foi devolvido 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 encomenda e o hash de commit desapareceram, com um espaço duplo onde cada um estava. O leitor remove qualquer sequência de 20 ou mais caracteres composta apenas pelos dígitos 0–9 e pelas letras a–f, porque é assim que os dados de imagem incorporados se apresentam em RTF. Um número longo no seu texto parece-lhe igual. O número de telefone sobreviveu porque os seus grupos de dígitos são curtos.
Isto é sobretudo relevante para contratos, faturas, notas técnicas e registos com números de referência longos. O verificador lista todas essas cadeias no seu ficheiro de origem e indica-lhe se alguma está em falta após a tradução.
Passo 2: Escolha a via certa para o seu ficheiro
Use o resultado do verificador para escolher uma:
| O que o seu ficheiro contém | Melhor opção | Porquê |
|---|---|---|
Parágrafos simples, do Word ou de outra aplicação com \par | Carregue o RTF | Os parágrafos são devolvidos um a um; perde apenas a formatação de que não precisava |
Parágrafos simples, do TextEdit (\cocoartf) | Converta primeiro para DOCX ou TXT e carregue esse ficheiro | O leitor de RTF enviaria o ficheiro inteiro como um único parágrafo |
| Títulos, tabelas, notas de rodapé ou formatação que precisa de manter | Guarde como DOCX no Word ou no LibreOffice e carregue o DOCX | A via RTF reconstrói um ficheiro simples; o DOCX passa pelo fluxo de trabalho do Word |
| Números de referência ou hashes longos | Qualquer das vias, e depois verifique | Confirme se todos os números foram devolvidos |
Para converter um ficheiro do TextEdit num Mac, abra o Terminal e execute um destes comandos:
textutil -convert docx notes.rtf
textutil -convert txt notes.rtf
O primeiro escreve notes.docx junto do original. Quando convertemos o nosso ficheiro de teste do TextEdit desta forma, o DOCX tinha um parágrafo separado para cada linha e manteve as palavras a negrito e em itálico. Não manteve a tabela, que passou a parágrafos separados, nem a ligação. Se precisar destes elementos, abra o ficheiro no Word ou no LibreOffice e guarde-o como DOCX a partir daí, e verifique a tabela antes de carregar. O segundo comando escreve um ficheiro de texto simples. Utilize-o quando só precisa das palavras; o nosso guia de tradução de texto simples explica o que verificar num ficheiro TXT.
Para um documento do Word em que as tabelas, os estilos e os cabeçalhos são importantes, consulte o nosso guia sobre traduzir um documento do Word mantendo a formatação. As FAQ do BookTranslator na sua página do tradutor de documentos dão o mesmo conselho para ficheiros .doc antigos do Word: traduz o texto e devolve um ficheiro RTF, e recomenda guardá-los primeiro como DOCX quando as imagens, as tabelas ou o esquema precisam de ser mantidos.
Passo 3: Traduza o ficheiro completo
Carregue o ficheiro, escolha o idioma de destino e verifique o preço antes de pagar. O BookTranslator traduz os parágrafos por ordem. Para um ficheiro 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.
Recebe dois ficheiros:
- O ficheiro traduzido: cada parágrafo no idioma de destino.
- O ficheiro bilingue: cada parágrafo original seguido da respetiva tradução. Este é o ficheiro mais rápido para revisão, porque pode ler os dois lado a lado e detetar um parágrafo que foi ignorado ou mal interpretado. No ficheiro bilingue do nosso teste do TextEdit, o documento completo 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.
Ambos os ficheiros são escritos como parágrafos simples em Times New Roman de 12 pontos. Os idiomas de destino com escrita da direita para a esquerda, como o árabe e o hebraico, são marcados como parágrafos da direita para a esquerda. Abra os ficheiros no Word, no LibreOffice ou no TextEdit para os ler e formatar.
Passo 4: Verifique o ficheiro traduzido
Execute o verificador com o ficheiro de origem e a tradução:
python3 check_rtf.py sample-word-style.rtf sample-word-style-translated.rtf
Para o nosso ficheiro ao estilo do Word, a secção de comparação apresentou:
== 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 a 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 ficheiro dos números longos, apresentou duas linhas MISSING, uma para cada número que foi eliminado. Para o ficheiro do TextEdit, visible_paragraphs: 8 -> 1 é o sinal para voltar ao Passo 2.
O verificador conta a estrutura. Não consegue dizer se a tradução é boa. Leia o ficheiro bilingue, pelo menos as páginas iniciais e qualquer passagem com nomes, números ou diálogo.
Problemas comuns
O meu RTF traduzido é um único parágrafo longo. O seu ficheiro de origem veio muito provavelmente do TextEdit ou de outra aplicação Mac. Execute o verificador no original. Se este avisar sobre quebras de linha com barra invertida, converta o ficheiro para DOCX ou TXT e traduza esse em vez disso.
Algumas palavras estão coladas, como "StopTime". Eram células de tabela. As tabelas RTF perdem os limites das células nesta via. Traduza uma cópia DOCX do ficheiro se a tabela for importante.
Uma frase termina com texto que não lhe pertence. Provavelmente é uma nota de rodapé. Encontre-a no original e, em seguida, mova a sua tradução de volta para uma nota de rodapé no Word.
Falta um número na tradução. Se 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 desapareceu. Isso é esperado na via RTF: o ficheiro é reconstruído com parágrafos simples. Se precisar da formatação, traduza uma cópia DOCX ou volte a aplicar os estilos após a tradução. A 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 em DOCX em vez disso? Não a partir de um carregamento de RTF; entra RTF, sai RTF. Converta o original para DOCX antes de carregar e o resultado volta como DOCX.
Publicações relacionadas





