您的位置:首页 > 其它

解决jpgraph中文乱码问题

2015-03-12 16:22 260 查看
在PHP开发使用jpgraph类库生成统计图表时,图表的标题及坐标轴文字出现中文乱码情况,现将解决办法总结如下,仅供参考。

jpgraph的下载和配置过程省略,直接进入正题:

(1)修改jpgraph_ttf.inc文件

在jpgraph的src目录下,找到jpgraph_ttf.inc文件,编辑图中代码(在180行左右),注释掉原有内容,直接返回$aTxt。

elseif( $aFF === FF_SIMSUN ) {
//Do Chinese conversion
//  if( $this->g2312 == null ) {
//  include_once 'jpgraph_gb2312.php' ;
//  $this->g2312 = new GB2312toUTF8();
// }
//return $this->g2312->gb2utf8($aTxt);
return $aTxt;
}


(2)下载simsun.ttf格式文件

自行下载simsun.ttf文件后,放置在jpgraph目录下的src/fonts文件夹里,命名为"FF_SIMSUN.ttf"。

(3)修改jpgraph_legend.inc文件

在jpgraph的src目录下,找到jpgraph_legend.inc文件,编辑图中代码,将"FF_DEFAULT"替换为"FF_SIMSUN"。此处注意:变量名要与步骤二中的文件名一致。

class Legend {
public $txtcol=array();
//public $font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8; // old. 12
public $font_family=FF_SIMSUN,$font_style=FS_NORMAL,$font_size=8; // old. 12


修改完毕,在生成图表时,可直接引用中文并设置其格式,例如:

$graph->title->Set('销量统计');//标题内容

$graph->title->SetFont(FF_SIMSUN, FS_BOLD, 15); // 标题格式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: