命令行下转换word文档成PDF

命令行的好处是如果有很多文档要处理的话比较省事。

两个方案,分别基于wv(和abiword的渲染内核一样)和openoffice.org/cups-pdf。

  • wv.  1. 安装wv (apt-get install wv), 这个包带了很多有用的命令行文件转换工具,比如wvText能转换doc文档至纯文本;wvLatex转换至LaTeX; wvHtml转换至html等。这里我们要的工具叫做wvPDF. 2. 用法: wvPDF <docfile>.doc <outfile>.pdf. 这个命令比较灵活,缺点是不能处理.docx文件,还有就是abiword的渲染还是比不上openoffice。
  • [update:] 刚才google了一下,发现wv已经很多年没有更新了。它自己的网站建议直接用abiword的命令行。用法如下:1. apt-get install abiword; 2. abiword -t pdf <docfile>.doc[x].  我试了一下,可以转换docx文档,效果比wv好但还是比oowriter略差。另外那个-t <format>的用法:<format>可以为pdf, txt, html, doc, rtf, odt, tex(这个是试出来的,man abiword并没有记录这个功能)。生成的LaTeX文档应该说效果还可以,自己再稍微编辑一下能做到乱真。
  • openoffice/cups-pdf.  本质上等于在命令行调用oowriter来打印。1. 安装cups-pdf (apt-get install cups-pdf),这是一个虚拟打印机。它的名字就叫(大写的)PDF。打印到这个打印机的任何文档都会出现在~/PDF/里。2. 命令行调用oowriter来打印的语法:oowriter -pt PDF <docfile>.doc[x].  同理,你要是想用命令行打印到一个真正的打印机,只要把PDF换成你真正的打印机的名字即可。和abiword相比,这个用法不够灵活(只能生成PDF不能生成比如说LaTeX),但效果最佳。

相关推荐