2012-04-04 10 views
3

コマンドラインで様々なiWorkファイル(Numbers、Pages、Keynote)をPDFに一括変換しようとしています。コマンドラインでMac iWorkファイルをPDFにバッチ変換

私はcupsフィルタを試してきましたが、iWorkタイプのMIMEタイプフィルタはありません。次に、qlmanageを使用してプレビューイメージを生成して使用する方法を検討しましたが、複数ファイルのKeynoteドキュメントではPDFではなくHTMLとして生成されるので、これは機能していないようです。

提案がありますか?私はむしろAppleScriptに頼っていません。

答えて

2

うーん...あなたは

  1. 、iWorkのファイル形式を理解して何かを必要とするが、その後PDFを作成するために文書をレンダリングすることができます。

iWorkスイートを再作成しない限り、iWorkアプリケーションに必要なものを伝えるだけで簡単に聞こえます。

あなたはScripting Bridge

を経由して、私はAppleScriptを使うだろうが、おそらくあなたはスクリプト橋、RubyCocoaのとPyObjCではスクリプティングブリッジto accomplish what you need

Ruby and Pythonを使用することができますスクリプトはどのようなAppleScriptスクリプトを実行できることを行うだろうスクリプト可能なアプリケーションを制御し、それらとデータを交換することができます。

私はしばらくScripting Bridgeを使用していませんでしたが、アプリケーションにドキュメントを印刷するよう指示できます。 OS Xで印刷できるアプリケーションならば、代わりにPDFに送ることができます。

3

AppleScriptを避けたいと思っていたので、ここで私はこれで終わりました。

iWorkドキュメントを保存するときに、「ドキュメントでプレビューを含む」チェックボックスがあります。これを確認すると、iWorkドキュメントバンドル内の「QuickLook/Preview.pdf」(実際はzipファイル)が作成されます。幸運にも私はこれをzipファイルの大半をチェックしていたので、単純にNSTemporaryDirectoryに解凍してそのファイルを取得したのです。

私はqlmanageを実行してドキュメントプレビューを作成するためのスクリプトをまとめました。 PDFを作成するものもあれば、HTMLファイルを作成するものもあります。このHTMLをPDFに変換するには、http://code.google.com/p/wkhtmltopdf/を使用します。

2

ここには、あまり考えずにこの作業をしたい人を助けるためのいくつかのコマンドがあります。それはpptファイルで私のために働いた。

hereから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

1

私は、フォルダ内のすべてのファイルが.pages.docxに変換.applescriptscriptを作成しました。 .pdfのサポートを簡単に追加できます。 pages2docx.applescriptの場合は、Microsoft WordPDFに置き換えてください。

関連する問題