Ich möchte eine .tex-Datei in eine .odt-Datei konvertieren.
Können Sie eine gute schrittweise Lösung vorschlagen?
Ich möchte eine .tex-Datei in eine .odt-Datei konvertieren.
Können Sie eine gute schrittweise Lösung vorschlagen?
Antworten:
Ob Sie es glauben oder nicht, mit komplexen Dokumenten und vielen enthaltenen Paketen habe ich mit LaTeX2HTML viel bessere Ergebnisse erzielt als mit LaTeX2RTF, Pandoc oder TeX4ht.
latex2html texfile.tex -split 0 -no_navigation -info "" -address "" -html_version 4.0,unicode
Dadurch wird ein Ordner mit demselben texfile
Namen generiert , sodass Sie den generierten HTML-Code in ODT konvertieren können:
libreoffice --headless --convert-to odt:"OpenDocument Text Flat XML" texfile/index.html
Dies erzeugt eine index.odt
Datei. In dieser Antwort erfahren Sie, wie Sie die Konvertierungsfilter von LibreOffice verwenden.
Bearbeiten von Kommentardiskussion:
Obwohl die oben beschriebene Methode funktioniert, ist es sehr enttäuschend, dass ich nur mit der PDF-Ausgabe von LaTeX unter Adobe Acrobat Pro ein absolut zuverlässiges Dokument erstellen konnte.
In den Repositories gibt es ein Tool, das LaTeX in das XML-Format von openoffice.org ändert: tex4ht
TeX4ht ist ein hoch konfigurierbares, auf TeX basierendes Autorensystem zur Erzeugung von Hypertext. Es interagiert mit TeX-basierten Anwendungen über Stildateien und Postprozessoren und überlässt die Verarbeitung der Quelldateien dem nativen TeX-Compiler. Folglich kann TeX4ht die Funktionen von TeX-basierten Systemen im Allgemeinen und von LaTeX im Besonderen verarbeiten.
TeX4ht kann sowohl zum Verfassen von HTML mit TeX / LaTeX-Eingabedateien als auch zum Konvertieren vorhandener TeX-Eingabedateien (in einem beliebigen Format) in HTML mit (normalerweise) nur geringfügigen Änderungen verwendet werden. Es können auch andere Arten von Hypertext erzeugt werden, einschließlich XML, XHTML, MathML und das Openoffice.org-Format von XML.
Befehlszeile...
latex filename.tex
bibtex filename.aux
mk4ht oolatex filename.tex
Sollte mit einer openoffice.org/libreoffice kompatiblen Datei enden.
Eine weitere Lösung bietet das Paket pandoc
Als Beispiel können Sie Folgendes tun:
pandoc -f latex -t odt -o output.odt input.tex
Wenn die Eingabedatei latin1
wie meine Tex-Dateien codiert ist, lautet die Lösung:
iconv -f ISO-8859-1 input.tex | pandoc -f latex -t odt -o output.odt
Ich melde einen Teil der Beschreibung des Pakets:
Pandoc ist eine Haskell-Bibliothek zum Konvertieren von einem Markup-Format in ein anderes und ein Befehlszeilentool, das diese Bibliothek verwendet. Es kann lesen
- Abschlag und
- Teilmengen von
- reStructuredText,
- HTML und
- Latex
und es kann schreiben
- einfacher text,
- abschlag,
- reStructuredText,
- HTML, -LaTeX, -ConTeXt,
- RTF,
- DocBook XML,
- OpenDocument XML,
- ODT ,
- GNU Texinfo,
- MediaWiki-Markup,
- EPUB,
- Textil,
- groff manpages,
- Emacs Org-Modus und
- Rutschig oder
- S5 HTML-Diashows.
Dies kann in 2 Schritten erfolgen. Gehen Sie zu http://latex2rtf.sourceforge.net/ und verwenden Sie die bereitgestellten Tools, um zuerst von Latex nach RTF und dann von RTF nach ODT zu konvertieren.
Ich hoffe es hilft.
Wenn Sie das Paket tex4ht installiert haben, oolatex filename
konvertiert der Befehl die .tex in .odt (weitere Informationen zu tex4ht finden Sie hier ).
Eine andere Möglichkeit wäre das latex2rtf- Paket, das RTF als Zwischenformat verwendet.