• 締切済み

PDFlib・・・日本語表示の設定??

皆さん宜しくお願いいたします。 PDFlibをインストールしたのですが、サンプルの"hello.php"を実行すると正常にpdfファイルが表示出来ました。 そこで"hello.php"-->"hello_j.php"にコピーして日本語文字を記入して実行したのですが、日本語が文字化けしてしまいます。 私の設定に問題がある事は判っているのですが、全然解決出来ません。色々、参考サイトを見ましたが???の状態です。 *php.iniをSJISから  mbstring.internal_encoding = EUC-JP  mbstring.http_output = EUC-JP に変更してもダメでした。 <PC環境>  windows xp(sp2) apache v.2.0.58 php v.5.1.4 何方かご存知の方、ご教授下さい。

みんなの回答

  • okdt
  • ベストアンサー率100% (4/4)
回答No.2

ポイントはフォントの設定です。 フォントをロードする部分で、 $font = PDF_load_font($p, "Helvetica-Bold", "winansi", ""); のかわりに、 $font = PDF_load_font($p, "HeiseiKakuGo-W5", "EUC-H", ""); のようにしてフォントをセットしてあげるだけです。 参考URLの「PDFlib HOWTO」の「FAQ」ページや、PDFlibマニュアル(日本語もあります)から、上記関数の使い方を調べてみられることをお勧めします。 ※ なお、PHP のソースの文字コードが SJIS の場合は、当然 "EUC-H" ではなく "SJIS" を指定する必要があります。UTF-8の場合、などの個々の対応もマニュアルを参照ください。

参考URL:
http://hykw.tv/comp/pdflib/
syosin-oyaji
質問者

お礼

okdt様、ご教授頂きありがとうございました。又お礼の返信が遅れた事をお詫びいたします。 ・私の質問で肝心の「PDFlib」のバージョンを記載するのを忘れていました、 すみません。<===「PDFlib 7」です。 =============================================================== 「PDFlib 7」の説明によると、日本語を表示するにはCMapのインストールが必要との事です。 (これまでの操作結果) 一通りインストールした後に、okdt様ご指摘の様に $font = $p->load_font("HeiseiKakuGo-W5", "SJIS", ""); にして実行すると下記エラーになります。(EUCも同じ) PDFlib exception occurred in hello sample: [1552] : Couldn't find encoding 'SJIS' そこでオリジナル('winansi')にもどすと下記エラーです。 PDFlib exception occurred in hello sample: [2516] : Font 'HeiseiKakuGo-W5' with encoding 'winansi': Metrics data not found 難しいですねーーーー。"hello.php"を雛形にして勉強しようとしているのですが、こんな入り口で悩んでいてはお手上げです。 =============================================================== fontの'HeiseiKakuGo-W5'とは私のPCに存在している事さえ判らない ので、根本的な素人に解り易いサイトとかご存知でしたら教えていただけないでしょうか。

回答No.1

FPDFで日本語を扱う為には、日本語パッチの「mb_patch」を 充てる必要があります。 ↓↓↓↓↓ http://surf-style.us 「開発メモ」に記載してあります。

参考URL:
http://surf-style.us
syosin-oyaji
質問者

お礼

tran-tran様、回答ありがとうございました。 すみませんが、PDFlib の質問だったのでFPDFにトライする時に 参考にさせてもらいます。できましたら、「PDFlib 7」の解決策を ご存知でしたら、よろしくお願いいたします。

関連するQ&A

専門家に質問してみよう