PHP

TCPDFを使ってPHPでPDFファイル作成 – PHP

請求書に発注書、給与明細などPHPでPDFを出力する必要がありました。

wkhtmltopdfを使いHTML/CSSで表示したのをPDFにする事も出来ますが、TCPDFを使ってPDF出力を行う事にしました。

あわせて読みたい
web画面キャプチャー wkhtmltopdf(wkhtmltoimage) - Linuxwebサイトのキャプチャーを撮るwebサービスは沢山あります。 一回、二回などの低頻度で使うならwebサービスを使えばいいのですが...

参考サイト

PHP を使用して PDF ファイルを動的に作成する

導入方法

TCPDFのダウンロード

GitHubからTCPDFのPHPプログラムコードをダウンロードします。
GitHub:https://github.com/tecnickcom/tcpdf

使用するプログラムは

config
examples
fonts
include
tcpdf.php
tcpdf_autoconfig.php
tcpdf_barcodes_1d.php
tcpdf_barcodes_2d.php
tcpdf_import.php
tcpdf_parser.php

IPAフォントのダウンロード

フォント:http://ipafont.ipa.go.jp/
IPAexフォント Ver.003.01 明朝とゴシックがあります。

ダウンロードしたZIPファイルを解凍し、ttfファイルをfontsフォルダに設置してください。

PDF作成サンプル

//TCPDF読み込み
require_once('tcpdf.php');

$pdf = new TCPDF("L", "mm", "A4", true, "UTF-8" );
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);

$pdf->AddPage();

//フォント設定
$font = new TCPDF_FONTS();
$fontTtf = $font->addTTFfont('ttfファイル');
$pdf->SetFont($fontTtf);

$pdf->Text( 10, 10, "テストテキスト" );

//PDF出力
$pdf->Output("example.pdf", "I");

サンプル作成までは簡単に行えますが、これからが慣れるまで難しいです。
X軸とY軸の座標を指定しながらテキストや線を描くので座標計算などが面倒くさいですね。

最初は簡単な表でも数日は掛かってしまいます。
内容によりますが、慣れれば1~2日で作成できるようになるでしょう。

マニュアル:http://tcpdf.penlabo.net/pickup/document.html

まとめ

慣れればどんな書類でも作成出来るようになると思います。

基本的にはエクセルで出来るような事もありますが、大きいデータや更新頻度が高いデータを使う場合には良いでしょう。

ボタン一つでデータを集計したPDFの書類などが作成できるようになると思います。

COMMENT

メールアドレスが公開されることはありません。