Convertendo arquivos rtfd para txt, sem excluir hiperlinks e imagens no OS X

1

Eu tenho muito (> 10k ... isso não pode ser feito manualmente) dos arquivos rtf e rtfd que eu gostaria de transformar em arquivos txt. Infelizmente eles contêm fotos e hiperlinks que eu não quero perder. Idealmente, gostaria de:

  1. tem hiperlinks do arquivo rtf / rtfd armazenados como texto simples (algo como [[description]link] )

  2. ter todas as imagens "separadas" do arquivo rtfd

  3. tem o novo arquivo txt com URLs, bem como as imagens do arquivo rtf / rtfd salvas juntas em uma pasta com o nome do antigo arquivo rtf / rtfd.

Como isso pode ser feito?

    
por Hennes 01.02.2012 / 19:41

1 resposta

4

.rtfd são apenas pacotes de um arquivo TXT.rtf com instruções de formatação não padrão e as imagens. Então você já tem estes e o arquivo RTF separado.

Os arquivos RTF são apenas o texto com algumas instruções de formatação, semelhantes ao HTML. Assim, você pode usar substituições de strings baseadas em texto simples.

Uma imagem incorporada tem esta aparência no meu documento de amostra:

{{\NeXTGraphic Screen Shot 2012-02-01 at 19.47.21.png \width13940 \height11020
}¬}

No arquivo RTF, altere todas as ocorrências de \NeXTGraphic para algo como "Imagem:"; a outra formatação será simplesmente ignorada quando você abri-la na próxima vez (pelo menos no meu teste limitado).

Um hiperlink incorporado é assim:

{\field{\*\fldinst{HYPERLINK "http://superuser.com/questions/384862/osx-converting-rtfd-files-to-txt-without-deleting-hyperlinks-and-pictures"}}{\fldrslt applescript - OSX: Converting rtfd files to txt, without deleting hyperlinks and pictures - Super User}}\
\
}

Mais uma vez, a substituição de texto bastante simples, que você pode fazer na maioria dos editores de sua escolha, ou, e. usando sed na linha de comando. fldinst é o URL de hiperlink subjacente, fldrslt é o rótulo.

Depois de substituir todas as imagens e hiperlinks por alternativas compatíveis com texto sem formatação, basta executar textutil -convert txt Document.rtfd/TXT.rtf para converter o arquivo RTF em texto sem formatação.

Se você não tivesse feito as substituições da imagem incorporada e dos hiperlinks anteriormente, eles teriam sido perdidos.

É claro que textutil pode converter arquivos HTML e de imagem sem perder informações. Se você se sentir mais confortável ao criar scripts para as substituições de tags HTML, poderá fazer isso primeiro.

    
por 01.02.2012 / 20:06