haruPDFで日本語フォントを使う例
haruPDFに組み込まれているフォントは、名前を指定するだけで使うことができる。
組み込まれている日本語フォントは、MS-Mincyo、MS-Gothic、MS-PMincyo、MS-PGothic。フォントファイルを用意したりする必要はない。
知らないと気づかないポイントは、HaruDoc::useJPFonts()、HaruDoc::useJPEncodings()を使うこと。
エンコードの指定と引数に渡す日本語の文字コードはいろいろな組み合わせができるのでお試しあれ。
どうもUTF-8は渡せないようなので、機種依存文字を使いたいときはSHIFT_jisにして渡すしかないような気がします。
サンプルコード(UTF-8で保存)
<?php /** * HaruPdfで日本語フォントを使う例 */ $pdf = new HaruDoc; $pdf->useJPFonts(); $pdf->useJPEncodings(); //pageを用意 $page = $pdf->addPage(); //文字出力開始 $page->beginText(); $insFont = $pdf->getFont('MS-Gothic', "90ms-RKSJ-H"); $page->setFontAndSize($insFont, 20); $page->textOut(40, 780, mb_convert_encoding("ようこそ ABC ①② 髙 ", 'SJIS-win', 'UTF-8')); $insFont = $pdf->getFont('MS-Mincyo', "EUC-H"); $page->setFontAndSize($insFont, 20); $page->textOut(40, 700, mb_convert_encoding("あえいうえおあお ", 'eucjp-win', 'UTF-8')); $insFont = $pdf->getFont('MS-PMincyo', "90ms-RKSJ-H"); $page->setFontAndSize($insFont, 30); $page->textOut(40, 620, mb_convert_encoding("ようこそ HaruPDF!①②髙", 'SJIS-win', 'UTF-8')); $insFont = $pdf->getFont('MS-PGothic', "90ms-RKSJ-H"); $page->setFontAndSize($insFont, 10); $page->textOut(40, 600, mb_convert_encoding("UTF-8には対応してないのかな?", 'SJIS-win', 'UTF-8')); $page->textOut(40, 590, mb_convert_encoding("SJIS-winに対応してるまぁよし ", 'SJIS-win', 'UTF-8')); //文字出力終了 $page->endText(); //ついでなので、線描いてみます $page->moveTo(100, 100); $page->lineTo(200, 100); $page->stroke(); $page->setLineWidth(5.0); $page->moveTo(200, 200); $page->lineTo(200, 400); $page->stroke(); //ファイルとして保存するのもよい //こうしてブラウザに返すのもよい header('Content-type: application/pdf'); header('Content-Disposition: attachment; filename="haru.pdf"'); $pdf->output();
コメント