解决jpgraph中文乱码问题

在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); // 标题格式

转载于:https://www.cnblogs.com/wangcp/p/4332773.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值