(PHP) TCPDFで外部フォントの指定(addTTFfontの修正)



PHPでPDFを動的に生成するライブラリ「TCPDF」のメモです。

標準で用意されているフォント以外を使う方法はWebで検索すると多数紹介されていますが、TCPDFの最新版(今回は6.2.3)でエラーが出てしまったので修正点を紹介します。

ライブラリのインストール方法等は割愛します。

以前の方法はTCPDFクラスからaddTTFfontを設定していましたが、新しいバージョンでは TCPDF_FONTS からaddTTFfontを呼ぶ必要があります。そのま実行するとCall to undefined method TCPDF::addTTFfont()とエラーが出てしまいます。

以前の方法
$pdf = new TCPDF("L", "mm", "A4", true, "UTF-8" );
$font = $pdf->addTTFfont('フォント名.ttf');
$pdf->SetFont($font , '', 32,'',true);
$pdf->Text(0, 0, "PDFに表示する文字" );

新しい設方方法
$pdf = new TCPDF("L", "mm", "A4", true, "UTF-8" );
$font = new TCPDF_FONTS();
$fontX = $font->addTTFfont('フォント名.ttf');
$pdf->SetFont($fontX , '', 32,'',true);
$pdf->Text(0, 0, "PDFに表示する文字" );

フォントを複数使う場合もフォントごとに新しいインスタンスを作ります。


コメントを残す

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

SPAM防止のため数字と漢数字の算数の計算をお願いします。 * Time limit is exhausted. Please reload CAPTCHA.