php jpgraph库非常强大,可以在后台生成图片
后台生成在需要导出图表型报告的时候非常有用,当然,前端的可视化还是要用highcharts/echarts/anycharts等类库
比较麻烦的是中文乱码问题,有3个地方乱码:
先说明下我的环境和版本:
1
2
3
4
5 |
//jpgraph_legend.inc.php 3 class
Legend { 2 public
$txtcol = array (); 1 //public $font_family=FF_DEFAULT,$font_style=FS_NORMAL,$font_size=8; // old. 12 0 public
$font_family =FF_SIMSUN, $font_style =FS_NORMAL, $font_size =8; // old. 12 |
记得下载一份 simsun.ttc 放到 /usr/share/fonts/truetype
1
2
3
4
5
6
7
8
9
10
11
12 |
//jpgraph_ttf.inc.php 9 elseif ( $aFF
=== FF_SIMSUN ) { 8 // Do Chinese conversion 7 /* 6 if( $this->g2312 == null ) { 5 include_once ‘jpgraph_gb2312.php‘ ; 4 $this->g2312 = new GB2312toUTF8(); 3 } 2 return $this->g2312->gb2utf8($aTxt); 1 */ 0 return
$aTxt ;<br> 1 } |
原创文章,转载请注明:http://www.cnblogs.com/phpgcs/
上面的解决方法,我是参考了:
http://blog.csdn.net/yiping1980/article/details/6023144
然后后面的2个我认为就是找到title/stickLabels源码的地方,将 FFDEFAULT 改为 FFSIMSUN 即可
后来证明果然是这样,而且方便的是 这2个家伙都在 jpgraph.php 文件中
直接
1 |
:%s /FF_DEFAULT/FF_SIMSUN/g |
就搞定了
1
2
3
4 |
2 $this ->title = new
Text(); 1 $this ->title->ParagraphAlign( ‘center‘ ); 0 //$this->title->SetFont(FF_DEFAULT,FS_NORMAL); //FF_FONT2, FS_BOLD<br> 1 $this ->title->SetFont(FF_SIMSUN,FS_NORMAL); //FF_FONT2, FS_BOLD |
1
2
3
4
5
6 |
5 class
AxisPrototype { 4 public
$scale =null; 3 public
$img =null; 2 public
$hide =false, $hide_labels =false; 1 public
$title =null; 0 public
$font_family =FF_DEFAULT, $font_style =FS_NORMAL, $font_size =8, $label_angle =0; |
还有个地方也有FF_DEFAULT,
1
2
3
4
5
6 |
5 class
DisplayValue { 4 public
$margin =5; 3 public
$show =false; 2 public
$valign = ‘‘ , $halign = ‘center‘ ; 1 public
$format = ‘%.1f‘ , $negformat = ‘‘ ; 0 private
$ff =FF_DEFAULT, $fs =FS_NORMAL, $fsize =8; |
原创文章,转载请注明:http://www.cnblogs.com/phpgcs/
【原创】jpgraph中文乱码问题的解决,布布扣,bubuko.com
原文:http://www.cnblogs.com/phpgcs/p/jpgraph_chinese_messy_code.html