很多人使用JpGraph会出现乱码问题,但是网上有好多并无效果的解决方式,经过反复试验及在网上看了其它人的经验,总结出在2.3版下最终较完美解决方案
1、把simsun.ttc字体拷到服务器/usr/X11R6/lib/X11/fonts/truetype下,当然这个目录可以自定义
2、不需要更改$aFF === FF_SIMSUN或$aFF === FF_CHINESE ,直接用以下代码即可
$title = "JpGraph中文测试";
$title = iconv("UTF-8", "gb2312", $title);
$graph->title->Set($title);
就可以完美的解决中文问题了
3、还有一个问题,就是右上方的中文显示问题,就是SetLegend函数,解决方式如下
打开jpgraph.php文件,找到
private $font_family=FF_FONT1,$font_style=FS_NORMAL,$font_size=12;

private $font_family=FF_SIMSUN,$font_style=FS_NORMAL,$font_size=8;
替换就OK了^_^
我用的是Jpgraph1.17,其实Jpgraph是支持中文的,只是我们没有正确设置,所以才出现了乱码。我以Jpgraph本身自带的accbarex1.php文件(目录:jpgraph-1.17\src\Examples)为例子说明如何设置:把第30行    $graph->title->Set("Accumulated bar plots");修改成    $graph->title->Set("中文");再把第34行    $graph->title->SetFont(FF_FONT1,FS_BOLD);修改成    $graph->title->SetFont(FF_SIMSUN,FS_BOLD); 浏览一下,怎么样,中文可以显示了吧。

解决方案 »

  1.   

    function matchdemo(){
       var r, re;         // 声明变量。
       var s = "the rain in spain falls mainly in the plain";
       re = /ain/i;    // 创建正则表达式模式。
       r = s.match(re);   // 尝试匹配搜索字符串。
       return(r);         // 返回第一次出现 "ain" 的地方。
    }
      

  2.   

    function matchdemo(){
       var r, re;         // 声明变量。
       var s = "the rain in spain falls mainly in the plain";
       re = /ain/ig;      // 创建正则表达式模式。
       r = s.match(re);   // 尝试去匹配搜索字符串。
       return(r);         // 返回的数组包含了所有 "ain"
                          // 出现的四个匹配。
    }