エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CakePHP 2.3で PDFを作成する方法を調査「mpdf」「TCPDF」「FPDF」

      2017/03/11

CakePHP 2.3で PDFを作成する方法

 

PDFを生成するライブラリを調査

 
CakePHPから PDFを出力する方法を調べてみましたので、そのレポートをお送りします。
 
CakePHPに限るわけではありませんが、CakePHP2.Xから PDF出力する方法は、「mpdf」「TCPDF」「FPDF」といったいくつかのライブラリがあるようでしたが、「http://cakephpmemo.blogspot.jp/2013/02/cakephppdf.html」この記事を読んで、TCPDFで実装をしてみることにしました。
 
とはいえ、上記のサイトでは初心者の私では何を言っているのかわからなかったため、実際に参考にしたサイトは、下記のサイトです。
 
http://prg.pro-mame.com/index.php?php%2F%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%2FCakePHP2.X%2FTCPDF
 
 


 

TCPDFを利用して PDF出力を実装

 
このサイトを上から順番に確認してそのまま対応していくと、たぶん問題なく PDFの出力について理解できると思います。
フォントを変える方法なども解説されていますので、実運用に向けてもかなりの参考になるでしょう。
 
また、インスタンスを生成する(クラスに初期値を設定する)際に設定する各項目と、その値は下記の様になっているようです。
 
PDF_PAGE_ORIENTATION:用紙の向き[P=縦方向、L=横方向] デフォルトはP
PDF_UNIT:処理単位[pt=ポイント、mm=ミリメートル、
     cm=センチメートル、in=インチ] デフォルトはmm
PDF_PAGE_FORMAT :ページフォーマット ( デフォルトは A4 )
※上記は /tcpdf/config/tcpdf_config.php ファイルで定義されています。
 
 
また、最初の 2つのサンプルでは、PDFの情報として、「Cell」「text」でテキストの位置と情報を与えています。
いずれも、最初の数値が横軸の座標値を表し、2個目の数字が縦軸の座標を表しています。「Cell」「text」の違いは、「text」が座標の絶対値で設定されるのに対し、「Cell」は相対値(??)で設定されるようです....
 
————–

————–
 
————–

————–
 
 

HTMLを渡すことで PDFにすることも可能

 
また、PDFのページデザインに関しては、Cell、textといった方法ではなく、HTMLで情報を渡す方法もあります。
実際は、こちらの HTML形式で整形していく方法を取られるのだと思いますが、実際に PDF出力をさせるページを作るとなると、しっかりした HTML(css)のコーディングが必要になりますので、結構骨が折れるでしょうね。
 
 

mpdfで PDF出力するための参考サイト

 
mpdf
http://d.hatena.ne.jp/okinaka/20111103/1320287622
http://blog.syuhari.jp/archives/1992
 
また、mpdfで作成する場合は、上記のサイトが参考になるのではないかと思います。
 
また、TCPDF、FPDFに関しては、下記のページも参考になるかと思います。
http://bakery.cakephp-users.jp/2011/02/05/creating-pdf-files-with-cakephp-and-tcpdf/

 - CakePHP 2.x 3.x

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

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

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

CakePHP 2.3で saveの便利な使い方・サンプルソース付き

CakePHPのレコードを保存、更新する際に使う Saveを詳細解説します。

CakePHP3でcomposerを利用してライブラリ・プラグインをインストールする方法

CakePHP3でcomposerを使ってパッケージ(ライブラリ、プラグイン)をインストールする方法の解説。PHPを使うのはCakePHP3が初めてというような方への使い方から解説。

CakePHP3のバージョンを指定してインストールする詳細な手順を解説
CakePHP3のバージョンを指定してインストールする詳細な手順を解説

CakePHP3のバージョンを指定してインストールする方法を詳細解説。CakePHP3のインストールはComposerを使うため設定もほぼ自動で完了。データベースの接続情報を記載すればアプリ開発のベースが整う。

CakePHP 2.3 ログイン、操作履歴、アクセスログ出力

CakePHPでログインや操作履歴などのアクセスログ出力処理を作成します。

CakePHP3にデイトピッカー jQuery UI DatePickerを実装する手順の解説
CakePHP3にデイトピッカー jQuery UI DatePickerを実装する手順の解説

CakePHP3にjQuery UIのDatePickerを実装する手順を説明。併せて、デイトピッカーを設置に関連するCakePHP3の解説と、テーマを変更したり、表記を変更するカスタマイズする方法なども紹介。

CakePHP3の画像、ファイルアップロードプラグインUpload Plugin 3.0の設置解説・その1
CakePHP3の画像、ファイルアップロードプラグインUpload Plugin 3.0の設置解説・その1

CakePHP3でファイル、画像をアップロードするプラグイン、upload plugin 3を導入する手順を解説した記事。3部作のその1で基本的な導入方法の解説で読みながら簡単に導入が可能。

CakePHP 2.3 Search Pluginで検索処理 その6ORDER、sortソートの機能

CakePHPの検索プラグイン Search Pluginの検索処理の中で order、ソートについての解説です。

CakePHP 2.3 Search Pluginで検索処理 その7queryを使って 日付の範囲検索

CakePHPの検索プラグイン Search Pluginの検索処理の中で queryを使って日付の範囲検索の方法です。

CakePHP 2.3 bakeの超初心者向けフォロー講座

CakePHP 2.3 bakeの超初心者向けフォロー講座

CakePHP 2.x系 Viewでのコメントの記述方法など

CakePHPにおいて View、ctpファイルでコメントを記述する方法を解説。