jpGraphをインストール時にハマったこと

jpgraphインストールした後、「さぁ試すぞだ!!!」って時に文字が化けてしまった。

イロイロと調べた結果下記のようになる。

PHPの内部エンコーディングがEUC-JPの場合、日本語フォントの
設定方法での対処だけでは日本語が化けてしまう。
jpgraph 1.20.5の場合、EUC-JPでないとwarningが発生して表示できないらしい。

gd_image.inc.phpの1349行目あたりに、

// Do special language encoding
   $txt = $this->langconv->Convert($txt,$this->font_family);
   $txt = mb_convert_encoding( $txt, "EUC-JP", "UTF-8"); <-ここを追加

jpgraph.phpを以下のように修正する。

2898行目付近 太字やイタリック体をとりあえずノーマルで表示する。

FF_MINCHO =>  array(FS_NORMAL=>MINCHO_TTF_FONT, 
FS_BOLD=>MINCHO_TTF_FONT,
   FS_ITALIC=>MINCHO_TTF_FONT, FS_BOLDITALIC=>MINCHO_TTF_FONT ),
FF_PMINCHO => array(FS_NORMAL=>PMINCHO_TTF_FONT, 
FS_BOLD=>PMINCHO_TTF_FONT,
FS_ITALIC=>PMINCHO_TTF_FONT, FS_BOLDITALIC=>PMINCHO_TTF_FONT ),
FF_GOTHIC  => array(FS_NORMAL=>GOTHIC_TTF_FONT, 
FS_BOLD=>GOTHIC_TTF_FONT,
FS_ITALIC=>GOTHIC_TTF_FONT, FS_BOLDITALIC=>GOTHIC_TTF_FONT ),
FF_PGOTHIC => array(FS_NORMAL=>PGOTHIC_TTF_FONT, 
FS_BOLD=>PGOTHIC_TTF_FONT,
FS_ITALIC=>PGOTHIC_TTF_FONT, FS_BOLDITALIC=>PGOTHIC_TTF_FONT ));

これで日本語化されるはず。

2~3時間くらい悩んでしまった・・・。
ハマったらしょうがないよね。。。

投稿者:

kishir

趣味: sk8, ピスト、ターンテーブル、レコード 仕事: Python, Objective-C, PHP, JavaScript

コメントを残す

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