このエントリーをはてなブックマークに追加

wkhtmltopdfでPDFを簡単作成

Sphinxで日本語PDFを作成するにはパッチを当てたりtexliveを入れたりと、それなりの準備が必要です。一度やってしまえばあとは楽なんですけどね。

そこでSphinxで素早く簡単に綺麗な日本語のPDFを作成する方法を参考にさせていただきながらwkhtmlpdfを使ってhtmlからpdfを作成してみました。

インストール

ubuntuの場合

% sudo apt-get wkhtmltopdf

Macの場合

https://code.google.com/p/wkhtmltopdf/downloads/detail?name=wkhtmltopdf.dmgからdmgを落としてアプリケーションにドラッグアンドドロップ

PDF作成

あとは

% make singlehtml  <-- singlehtmlで一ページに収めます
% wkhtmltopdf --print-media-type build/singlehtml/index.html output.pdf
% (Macの場合) /Applications/wkhtmltopdf.app/Contents/MacOS/wkhtmltopdf

とするだけです。 --print-media-type を指定することで印刷用のスタイルシートが使われます。試した限りではデフォルトのテーマでもかなり綺麗に出力されます。

あるいは、独自にcssを定義して、wkhtmltopdf実行時に読みこませることもできます。

% wkhtmltopdf --user-style-sheet pdf.css build/singlehtml/index.html output.pdf

通常だと要素の後に改行されてしまうので、 page-break-inside を無効にすると良いみたいです。

foursquare-APIを PDF にしてみたサンプルを置いておきます。--print-media-typeを指定しただけでここまでのものができます。(微妙に切れてるとこもありますが…)

まだ使い始めたばかりでオプションとかあんまり分かっていませんが、こうしたらいいよ、という情報があれば教えていただけるとありがたく思います。