今月PHPでPDFを出力する要件があったんで色々見てきましたので、まとめを。
昨年もちょっとやりましたが、色々と面倒です。
fpdfはかなり古くダメダメっぽいですね。昨年はじめにPDFを使う要件があって、これ使ってましたが。。。座標決めて以前はこれでコツコツと作っていたんですが、セル内での改行がうまくできない。fpdiを使ってテンプレートは使えるのですが・・・
代替案としてTCPDFを採用することに。fpdfよりはまあ使え、HTMLをそのまま組み込んだりできたんですが、ごくごく限られたCSSしか使えない・・・確かmarginやpaddingがダメで、ほんの少し字をずらしたいとかそういったこともできない。
今回はレイアウトにそれほどこだわるものじゃなかったんでなんとかなりましたが・・・・
まだ使ったことないけどwkhtmltopdf が良さげなようです。
PDF系のライブラリで注意しておきたいこと。
- ある程度新しいものか
古すぎると情報出てこないでソースの中を見るとかそういうめんどい事になりがち。 - 日本語出せるか
最初の難関。フォント設定したりしないといけない。 - 通常領域内のレイアウトの自由度。
座標はかなりめんどいが逆に言えば地道にやれば必ずできる - テーブルが作れるか
自動で作成するor HTMLなど。 - テーブル内の文字寄せ、幅の制御、複数改行ができるか
帳票作るときにこれができないと不恰好。複数行が盲点になりがちなので要注意。 - 自動ページ切り替え(特にテーブルがらみ)
あれば嬉しい