ブログ・エス技研

当ブログは引越しをしました。10秒後に自動で転送しますが、転送されない場合は、http://blog.s-giken.net/ をご覧ください。
ブログ・エス技研 TOP  >  スポンサー広告 >  CakePHP 2.x >  CakePHP 2.3で PDFを作成する方法を調査「mpdf」「TCPDF」「FPDF」

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[ --年--月--日 --:-- ] カテゴリ:スポンサー広告 | TB(-) | CM(-)

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

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

このサイトを上から順番に確認してそのまま対応していくと、たぶん問題なく 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」は相対値(??)で設定されるようです....

--------------
$pdf->Cell(10, 10, '日本語テスト');
$pdf->Cell(30, 30, 'Hello World' );
--------------
--------------
$pdf->text(10, 10, '日本語テスト');
$pdf->text(30, 30, 'Hello World' );
--------------


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


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/
関連記事
スポンサーサイト
[ 2013年10月28日 08:03 ] カテゴリ:CakePHP 2.x | TB(0) | CM(0)
コメントの投稿












管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL

プロフィール

エス技研

Author:エス技研
性別:男性
職業:Web系エンジニア
エンジニアになって 15年ほど経ちますが、その途中で 5年ほどディレクタ、マネジメントを中心とした業務を行っていたためにやや現場を離れていましたが、転職をきっかけに 2012年に現場に復帰し、新たな技術を楽しみながら勉強しています。
メインの環境は LAMP環境です。

FC2ブログランキング
FC2カウンター
FC2拍手ランキング
GoogleAdWords
カレンダー
10 | 2017/11 | 12
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -
検索フォーム
ブロとも申請フォーム
QRコード
QR
フリーエリア


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。