当前位置: 首页>>技术问答>>正文


如何将.tex转换为.odt?

, ,

问题描述

我希望将.tex文件转换为.odt文件。你能建议一个好的step-by-step解决方案吗?

最佳解决方法

信不信由你,复杂的文档和包含的大量软件包,使用LaTeX2HTML比使用LaTeX2RTF,Pandoc或TeX4ht获得更好的结果。

latex2html texfile.tex -split 0 -no_navigation -info "" -address "" -html_version 4.0,unicode

这将生成一个具有相同texfile名称的文件夹,因此您将能够将生成的HTML转换为ODT:

libreoffice --headless --convert-to odt:"OpenDocument Text Flat XML" texfile/index.html

这将生成一个index.odt文件。看看this answer,看看如何使用LibreOffice的转换过滤器。

从评论讨论编辑:

虽然上面的方法有效,但令人非常失望的是,我发现生成一个完全可靠的文档的唯一方法是在Adobe Acrobat Pro上使用LaTeX的PDF输出。

次佳解决方法

存储库中有一个工具可将LaTeX更改为openoffice.org的XML格式:tex4ht

libreoffice,latex,ubuntu

TeX4ht is a highly configurable TeX-based authoring system for producing hypertext. It interacts with TeX-based applications through style files and postprocessors, leaving the processing of the source files to the native TeX compiler. Consequently, TeX4ht can handle the features of TeX-based systems in general, and of LaTeX in particular.

TeX4ht can be used both for authoring HTML using TeX/LaTeX input files, or for converting existing TeX input files (in any format) into HTML, with (usually) only minor modifications. Other varieties of hypertext can also be produced, including XML, XHTML, MathML and the Openoffice.org format of XML.

命令行…

  1. latex filename.tex

  2. bibtex filename.aux

  3. mk4ht oolatex filename.tex

最终应该与openoffice.org/libreoffice兼容的文件。

第三种解决方法

另一种解决方案由包pandoc提供

libreoffice,latex,ubuntu

例如,您可以这样做:

pandoc -f latex -t odt -o output.odt input.tex

如果输入文件是latin1编码,就像我的tex文件一样,解决方案是:

iconv -f ISO-8859-1 input.tex | pandoc -f latex -t odt -o output.odt

我报告了包的部分描述:

Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. It can read

  • markdown and
  • subsets of
    • reStructuredText,
    • HTML, and
    • LaTeX

and it can write

  • plain text,
  • markdown,
  • reStructuredText,
  • HTML, -LaTeX, -ConTeXt,
  • RTF,
  • DocBook XML,
  • OpenDocument XML,
  • ODT,
  • GNU Texinfo,
  • MediaWiki markup,
  • EPUB,
  • Textile,
  • groff man pages,
  • Emacs Org-mode, and
  • Slidy or
  • S5 HTML slide shows.

第四种方法

它可以分两步完成。转到http://latex2rtf.sourceforge.net/并使用提供的工具首先从Latex转换为RTF,然后从RTF转换为ODT。

希望能帮助到你。

第五种方法

如果安装了tex4ht软件包,则命令oolatex filename将.tex转换为.odt(有关tex4ht的更多信息,请参阅here)。

libreoffice,latex,ubuntu

另一种方法是latex2rtf包,使用RTF作为中间格式。

libreoffice,latex,ubuntu

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1954.html,未经允许,请勿转载。