こんにちは。
今回はPHPでPDFファイルを出力する方法を紹介しようと思います。
自分の備忘録なので、説明は簡単にまとめています。
PHPでPDFファイルするに必要なファイル
PHPでPDFファイルに出力することが出来ます。
下記のファイルが必要になります。
tFPDF.phpについて
tFPDF.phpというファイルはPDF化する為のライブラリとなるプログラムです。
PDF化するライブラリファイルはFPDF.phpというのがオリジナルなのですが、日本語フォントに対応していないので、FPDF.phpから派生したtFPD.phpというファイルを使用します。
tFPDF.phpのダウンロードと展開
- FPDFサイトの下記のサイトにアクセスします。
ダウンロード先 http://www.fpdf.org/en/script/script92.php
- ページ一番下のDownloadのZIPファイルをクリックして、ファイルをダウンロードして下さい。
- ファイルを解凍します。フォルダをPHPが開くところに保存します。ローカルでxamppサーバーを利用して動かしている場合は、htdocsの下に保存するといいでしょう。
C:\xampp\htdocs\tfpdf
日本語フォントファイルのダウンロード
日本語のTrueTypeフォントファイルがなかなか見つからなく、Fontworks Inc の Klee One を使用しました。
フォントファイルはTrueTypeとOpenTypeがあります。TrueTypeフォントは拡張子がttfとなっているので、拡張子で見分けて下さい。
また、フォントは著作権があり、商用利用が出来るものを選びましょう。
- Klee OneのフォントはGoogle Fontsからダウンロードできます。
ダウンロード先 https://fonts.google.com/specimen/Klee+One?subset=japanese#standard-styles
- 2種類あるので、SemiBold 600の方を選びます。『Select this style』をクリックして下さい。
- 画面右側の『Download all』をクリックすると、フォントファイルがダウンロードできます。
- ZIPファイルを解凍し、『KleeOne-SemiBold.ttf』を下記のフォルダに移動させます。
C:\xampp\htdocs\tfpdf\font\unifont
これで準備完了です。
サンプルプログラム
下記がサンプルプログラムになります。
<?php
require('./../tfpdf/tfpdf.php');
$pdf = new tFPDF();
$pdf->AddPage();
$pdf->AddFont('KleeOne', '', 'KleeOne-SemiBold.ttf', true);
$pdf->SetFont('KleeOne', '', 14);
$pdf->Cell(40, 10, 'こんにちは、日本');
$pdf->Output();
上記のPHPファイルを開くと、PDFファイルが出力されます。
マニュアルはFPDFのサイトをチェック
細かい設定などは、FPDFの公式サイトをチェックして下さい。左側のメニューに『Manual』があります。英語ですが、各関数について詳しく説明されています。
コメント