tcpdf + PDFI + PHP によるPDFの出力
PDFで請求書を出力したかったのでやってみた
** Illsutratorを使用してPDFのテンプレートを作成する
Illustratorを使用して帳票のテンプレートを作成する。
保存するときに保存のオプションで、「互換性のある形式」を「Acrobat 5(PDF1.4)」にして保存する。
** tcpdf のインストール
https://github.com/tecnickcom/tcpdf
から zip をダウンロードするか clone して展開する。
** フォントのインストール
http://coliss.com/articles/freebies/best-of-free-japanese-fonts-for-2016.html
好きなフォントをダウンロードしてきて、.tff のフォントファイルを、tcpdf を展開したところに出来る fonts フォルダにコピーする。
fonts フォルダにフォントキャッシュが書き込まれるので、ウェブサーバプログラムのアカウントで読み書きできるようにする。
** FPDI のインストール
https://www.setasign.com/products/fpdi/downloads/
から FPDI のパッケージをダウンロードして、tcpdf とおなじところに展開しておく
** ライブラリの使用
>|
<?php
include 'tcpdf.php';
include 'fpdi.php';
$pdf = new FPDI(); // FPDI の呼出
$pdf->SetMargins(0,0,0); // 上左右マージンの設定
$pdf->SetCellPadding(0); // セルパディングの設定
$pdf->SetAutoPageBreak(false); // 自動改ページを無効
$pdf->setPrintHeader(false); // ページヘッダ無効
$pdf->setPrintFooter(false); // ページフッタ無効
$font_m = new TCPDF_FONTS(); // フォントクラスの呼出
$fontPathMintyo = './fonts/mintyo.ttf'; // 明朝フォントの設定
$MintyoFont = $font_m->addTTFfont($fontPathMintyo, '', '', 32);
$font_g = new TCPDF_FONTS(); // フォントクラスの呼出
$fontPathGothic = './fonts/gothic.ttf'; // ゴシックフォントの設定
$GothicFont = $font_g->addTTFfont($fontPathGothic, '', '', 32);
$pdf->AddPage(); // ページを追加
$pdf->setSourceFile('./template.pdf'); // テンプレートを読み込み
$tplIdx = $pdf->importPage(1); // 読み込んだPDFの1ページ目のインデックスを取得
$pdf->useTemplate($tplIdx, null, null, null, null, true); // 読み込んだPDFの1ページ目をテンプレートとして使用
$pdf->SetFont($MintyoFont, '', 12); // 書き込む文字列のフォント,サイズを指定
$pdf->SetTextColor(0, 0, 0); // 書き込む文字列の文字色をRGB指定
$pdf->SetXY(150, 20); // 左上から150mm右、20mm下の位置に
$pdf->Write(0, "ほげほげ" ); // 文字列を書き込む
$pdf->Output('testt.pdf', 'I'); // PDFとして表示
|<