dompdfはHTML/CSSを使ってPDFを生成するPHPライブラリ。

dompdfはPHP製のオープンソース・ソフトウェア。業務システムやレポートを出力する系統のWebアプリケーションで問題になりやすいのが帳票のフォーマットだ。システム的にはCSVまたはHTMLでの出力が楽だが、ユーザが望むのはPDFになりやすい。


HTMLとPDFの比較デモ

PDFは設計が面倒で、さらに出力するライブラリに癖があるものが多いのが難問だ。だがdompdfを使えばデザインの柔軟性を維持しつつ、高度なPDFを作成できるようになる。

dompdfが使っているのがHTMLとCSSだ。この二つを組み合わせてPDFを出力するので、帳票設計がとても柔軟に行えるのは間違いない。CSSは2.1または3に対応し、@importや@mediaを使うこともできる。HTMLは4.0に従っている。さらに外部スタイルシートにも対応し、帳票というよりWebページを作る感覚だ。


テーブル表示デモ

テーブルの表示や画像、文字装飾にも対応し、大抵のPDF文書であれば対応できるはずだ。UTF-8も考慮されているが、サンプルを見る限り文字化けてしまっていた。インラインのPHP記述にも対応し、動的に内容を変更できる。なおCSSのfloatには対応していないのでご注意を。今後帳票出力を行う時の候補として知っておきたいライブラリだ。

[s2If current_user_can(access_s2member_level1)]


テキスト配置のデモ(プレミアム限定)

[/s2If]

MOONGIFTはこう見る

日本企業の帳票へのこだわりは異常とも言える。汎用的フォーマットで済むはずなのに、なぜか細部にまでこだわろうとする。そのために開発依頼主、開発者相応に大きなコストになっているにも関わらずだ。しかも日本語というマルチバイトの問題があって使えないソフトウェアも多い。

dompdfについても全ての帳票で全く問題がない訳ではないだろう。だが対応していない部分を諦めるか別な対応を考えるだけで開発がとてもスムーズになるはずだ。HTMLをテンプレートにできるというのは大きなメリットと言える。帳票は細かな修正が多い(プリンタ絡みも含めて)のでデザインが柔軟なのは価値がある。

2011年04月22日 タイトルの誤字修正

dompdf - HTML to PDF converter (PHP5) - Google Project Hosting