Como substituir todas as imagens no Libreoffice com sua descrição

12

Eu tenho um documento muito longo contendo muitas imagens svg criadas usando a extensão TexMaths. Esta extensão usa a instalação do latex para criar uma imagem svg da equação introduzida (ou conjunto de equações). O código de látex para cada equação (ou conjunto de equações) é incorporado na imagem como parte de sua Descrição. Essa descrição pode ser acessada clicando com o botão direito do mouse na imagem svg e escolhendo a opção Descrição.

Eu quero substituir todas as imagens svg usando uma macro adequada, pelas descrições incorporadas.

por exemplo. de

  

A famosa equação de Einstein, [svg embedded equation: E = mc 2 ], nos diz que a massa pode ser convertida em energia e vice-versa.

Para

  

A famosa equação de Einstein, E = mc ^ 2, nos diz que a massa pode ser convertida em energia e vice-versa.

Isso permitirá que eu converta manualmente o arquivo odt contendo numerosas equações TexMaths para LaTeX.

    
por user30131 14.04.2014 / 08:50

1 resposta

2

Esta é uma maneira diferente sem usar macros. Como o arquivo .odt é basicamente apenas arquivos zipados e o arquivo principal é um XML.

  1. Crie uma folha de estilo XML texmath_raw_equation.xslt

  2. Extraia o arquivo .odt para a pasta tmp , exemplo texmath_test.odt :

    7z x -otmp texmath_test.odt
    
  3. Substitua a imagem TexMath (segure por <draw:g></draw:g> tag) por sua descrição (segure por <svg:desc></svg:desc> tag)

    xsltproc -o content.xml texmath_raw_equation.xslt tmp/content.xml
    mv content.xml tmp/content.xml
    
  4. Comprima de volta para o novo arquivo .odt

    cd tmp
    7z a -tzip ../texmath_test_new.odt *
    cd ..
    rm -r tmp
    

Referências:

por user.dz 31.05.2014 / 23:47