skillup

技術ブログ

PHP

PHPのPDFライブラリに関して。

投稿日:

今月PHPでPDFを出力する要件があったんで色々見てきましたので、まとめを。

昨年もちょっとやりましたが、色々と面倒です。

fpdfはかなり古くダメダメっぽいですね。昨年はじめにPDFを使う要件があって、これ使ってましたが。。。座標決めて以前はこれでコツコツと作っていたんですが、セル内での改行がうまくできない。fpdiを使ってテンプレートは使えるのですが・・・

代替案としてTCPDFを採用することに。fpdfよりはまあ使え、HTMLをそのまま組み込んだりできたんですが、ごくごく限られたCSSしか使えない・・・確かmarginやpaddingがダメで、ほんの少し字をずらしたいとかそういったこともできない。

今回はレイアウトにそれほどこだわるものじゃなかったんでなんとかなりましたが・・・・

まだ使ったことないけどwkhtmltopdf が良さげなようです。

PDF系のライブラリで注意しておきたいこと。

  • ある程度新しいものか
    古すぎると情報出てこないでソースの中を見るとかそういうめんどい事になりがち。
  • 日本語出せるか
    最初の難関。フォント設定したりしないといけない。
  • 通常領域内のレイアウトの自由度。
    座標はかなりめんどいが逆に言えば地道にやれば必ずできる
  • テーブルが作れるか
    自動で作成するor HTMLなど。
  • テーブル内の文字寄せ、幅の制御、複数改行ができるか
    帳票作るときにこれができないと不恰好。複数行が盲点になりがちなので要注意。
  • 自動ページ切り替え(特にテーブルがらみ)
    あれば嬉しい

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

インメモリデータベース redis

インメモリデータベースのredis(レディース)について。 キャッシュとして以前はmemcachedを使っていましたが、いろいろ多機能ということでredisをちょっと触ってみようかと。 Content …

no image

PHPでのコンソール入力に関して

PHPはほとんどの場合、ブラウザでURLをたたいてWEBサーバーから呼び出されるパターンがほとんどです。 ところが、コンソールから使いたい場合などもあるでしょう。 コンソールから入力する場合、なんらか …

no image

PHPのPDF出力に関するエラー

PHPからFPDFなどを使ってPDFを出力するプログラムを書いたんですが、下記のエラーでかなり悩まされました。

読んで字のごとくPDF …

no image

phpの時分秒+cakePHPのupdate

ちょっと小ネタ集になります。 Contents1 PHPで秒→時分秒変換2 cakePHPでのupdate PHPで秒→時分秒変換 PHPで秒数から時分秒に変換するプログラムです。 汎用的かなと思った …

no image

ファイルポインタ関連の操作に関して

CSVの読み込みに関してファイルポインタ関連で色々と整理することがあったのでメモ。 Contents1 今回やりたかった処理2 ファイルポインタとは 今回やりたかった処理 CSVファイルを読み込み(文 …

アーカイブ