批苹果iWork的文件转换为PDF在命令行(Batch convert Mac iWork file

2019-09-16 08:50发布

我想批一堆杂七杂八的iWork文件(数字,页面,主题)转换为PDF格式在命令行上。

我一直在试图杯过滤器,但没有对iWork的MIME类型型过滤器。 然后我看着使用qlmanage生成预览图像和使用,但这似乎并没有对多文件主题文档工作,因为他们产生的HTML而不是PDF。

有什么建议么? 我宁愿不诉诸的AppleScript。

Answer 1:

嗯......你需要的东西,

  1. 了解iWork的文件格式,
  2. 可以渲染文件,然后创建PDF。

除非你想重新发明iWork套件......听起来简单,只是告诉iWork的应用,您从他们想要的东西。

你会做,通过脚本桥接

我将使用AppleScript的,但也许你可以使用Ruby和Python与脚本桥来完成你所需要的

使用脚本桥,RubyCocoa及PyObjC脚本可以做的AppleScript脚本可以这样做:控制脚本化的应用,并与他们交换数据。

我没有用脚本桥在一段时间,但我相信你可以告诉应用程序打印文档。 这可以在OS X中打印的任何应用程序可以将它发送到PDF代替。



Answer 2:

这里是我结束了去,因为我真的想避免,AppleScript的。

当保存的文档的iWork有一个“包含预览文档中”复选框。 检查此创建的iWork原稿束内部的“和QuickLook / Preview.pdf”(实际上是一个压缩文件)。 幸运的是,我有这个检查对于大多数的zip文件,所以它只是解压缩到NSTemporaryDirectory并抓住该文件的情况。

对于那些没我把一个脚本来运行qlmanage创建文档预览。 对于一些创建PDF文件,为他人它创建一个HTML文件。 然后,您可以使用http://code.google.com/p/wkhtmltopdf/这个HTML转换为PDF。



Answer 3:

这里有几个命令,以帮助那些谁想要得到这个工作,没有太多的想法。 它的工作对我来说用PPT文件。

确保从获得wkhtmltopdf 这里 。

qlmanage -p -o /tmp /path/of/file.ppt
wkhtmltopdf /tmp/file.ppt.qlpreview/Preview.html /output/to/file.pdf

你可能有,如果你想在原来的页面保持一致,为PPT我用下面的参数做了工作与尺寸捣鼓:

wkhtmltopdf --page-width 200 --page-height 145 Preview.html file.pdf

编辑:我写了一个Python脚本做批量转换。 希望人们能够有助于使其更加坚固:

https://github.com/matthewfitch23/DocToPdf



Answer 4:

我创建了一个.applescript 脚本是将所有.pages文件夹中的文件.docx.pdf支持可以容易地添加。 在pages2docx.applescript你只需要更换Microsoft WordPDF



文章来源: Batch convert Mac iWork files to PDF on the command line