PDFライブラリ

2012.05.24

お久しぶりです。
アーキテクトの小山です。

新オフィスに移転し早一週間が経ちました。
心機一転、尚且つ初心を忘れずに尽力していく心積もりです。

さて今回は、EC-CUBEにも使用されているPDF生成ライブラリ『FPDF』についてです。

帳票を出力するときに使うこのライブラリですが、複数行に渡る長い文章がある時は自動的に改行出来なかったり、
特定の漢字が出力されなかったりということが散見しているところでした。

そこで、他にもPHPで製作されているPDFライブラリは無いものかと探してみたところ、いくつか見つけることが出来ました。

1.TCPDF
FPDFの後継と呼ばれるライブラリ。全体的にFPDFより使いやすくなっているようで、多くのメリットがあります。

メリット
・UTF-8が標準で用意されている
・日本語を使うための拡張(japanese,MBFPDF)が不必要
・HTMLタグが使える

反面、デメリットも当然あります。

デメリット
・フォント埋め込みなので、ファイルサイズが大きくなる
・出力に時間が掛かる

受注情報は一気に大量の出力を行う事が多いため、タイムアウトの危険性が高いライブラリは避けたいところ・・・・

2.mPDF
GPLライセンスのライブラリ。

メリット
・HTML、CSSが使える
・UTF-8が使用可能

デメリット
・使えるHTMLタグやCSSが限られている
・バージョンによって日本語対応が違う
・最新版の情報が少ない

いずれのライブラリもFPDFに比べるとかなり便利になっている様子。
知名度はTCPDFの方が高いため、リファレンスも豊富なようです。

FPDFだと縦横軸からの数値で表示場所を決定していたため、微調整に非常に時間がかかっていました。
HTMLを使えるのであればもう少し楽にPDFを作成できるのでしょう。
TCPDFであれば基本的な使用方法はFPDFと変わらないようなので、japanese拡張部分を対応すれば比較的スムーズに
代替出来るのではないかと考えています。

いずれにせよ、もっとライブラリを検証し本当に使いやすいものであればEC-CUBEに実装出来ないか試してみようと思います。

lab-php5

一覧へ