PHPからPDFを出力する

PHP

PHPからPDFを出力する

バージョン 5.9.179

サーバーにPDFライブラリをインストールして、パスを通して、とか面倒なことしないといけないのかなー
と思ってましたら、意外と簡単にできます。

TCPDFというライブラリを利用します。
下記から最新バージョンをダウンロードしましょう。

http://sourceforge.net/projects/tcpdf/files/

インストール方法は、ダウンロードしたファイルを展開して、できたtcpdfフォルダ(ディレクトリ)をWebサーバーのルートにおく。
Apacheがアクセスできるように、おいたファイルの権限のオーナーをApacheにし、すべてのファイル、ディレクトリを644にします。
これで終わりです。

要は、SmartyみたいにPHPから都度読み込むライブラリなので、ファイルをおくだけでOKなんですね。メンテナンスも楽です。

正しく動作しているかどうかは、examples/example_001.php などをWebサーバーから開いてみると、わかります。
PDFで、サンプルが表示されればできています![smile]

使う時には、このtcpdfフォルダ内のtcpdf.phpを読み込めばOKです。

 require_once('tcpdf/tcpdf.php');
 $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, 
               PDF_PAGE_FORMAT, true, 'UTF-8', false);
 //あとは、$pdf-> から色々と利用できます。

レンタルサーバーでも使えますね。

HTMLで書けるので、これが非常に便利です!

さて、デフォルトのコンフィグだと、日本語が表示されず??となってしまいます。
これはフォントが日本語フォントが指定されていないからですね。
??とならず、あわてず、コンフィグファイルを書き変えましょう。
日本語フォントがちゃんと用意されています。ありがたいことですね!

/tcpdf/config/tcpdf_config.php

189行目辺り

 define ('PDF_FONT_NAME_MAIN', 'Helvetica');
 ↓
 define ('PDF_FONT_NAME_MAIN', 'kozminproregular');

199行目辺り

 define ('PDF_FONT_NAME_DATA', 'Helvetica');
 ↓
 define ('PDF_FONT_NAME_DATA', 'kozminproregular');

各ファイルの中で変更する場合は、次のようにします。

 $pdf->SetFont('kozminproregular', '', 14, '', true);
カテゴリーPHP

コメントを残す

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