jpgraph中文显示问题的简洁版
来源:互联网 发布:window 命令启动软件 编辑:程序博客网 时间:2024/05/19 14:00
1、PHP JPGraph 中文字体设置
$graph->title->Set("www.php100.com");
$graph->title->SetFont(FF_FONT1,FS_BOLD); //英文字体
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置字体,类型,大小
$graph->title->SetColor('red'); //设置字体颜色
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); // 设置标题中文字体
$graph->legend->SetFont(FF_SIMSUN,FS_BOLD); //设置线条指示字体
$graph->yaxis->title->SetFont(FF_SIMSUN,FS_BOLD); //设置Y轴线条指示字体
$graph->xaxis->title->SetFont(FF_SIMSUN,FS_BOLD); //设置X轴线条指示字体
2、PHP JPGraph 背景和背景图片设置
$graph->SetColor('red'); //设置背景
$graph->SetBackgroundImage(“图片地址",1); //设置背景
$graph->img->SetMargin(0,0,0,0); // 空余四角边距(左右上下)
3、PHP JPGraph 3D效果图设置
$graph->Set3DPerspective(SKEW3D_LEFT,700,600,true);
//倾斜3D效果
// 1. 'SKEW3D_UP'
// 2. 'SKEW3D_DOWN'
// 3. 'SKEW3D_LEFT'
// 4. 'SKEW3D_RIGHT'
如果你的文件编码为utf-8,修改方法如下:
代码:
方法一,在程序中修改
$title="流量图";
$title = iconv("UTF-8", "gb2312", $title);
$graph->title->Set($title);
方法二,修改源文件jpgraph_ttf.inc.php
在第99-106行,改成下面这样子
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;
}
jpgraph默认显示汉字时是把汉字编码认为gb2312,转化为utf-8以后再显示。
这样的话,如果你的文件编码是gb2312,SetFont方法的第一个参数为FF_SIMSUN即可。
如果你是utf-8编码你还需要先把汉字编码转化为gb2312,这样你的汉字才可以正常显示。
使用
可以参照jpgraph-2.3.4/src/Examples中的例子。下面是一些常用的:
$graph->title->Set(‘设置图表的标题’);
$graph->xaxis->title->Set("设置X轴的标题");
$graph->yaxis->title->Set("设置Y轴的标题");
//设置字体 如果是中文,第一个参数一般设置为FF_SIMSUN
SetFont(FF_SIMSUN,FS_BOLD,14);
//如设置图表标题的字体
$graph->title->SetFont(FF_SIMSUN,FS_BOLD,14);
//设置颜色
SetColor('red');
在jpgraph中添加其他中文字体的支持:
在jpgraph_ttf.inc.php里找到这行注释“ // Chinese font ”
在其下面用像这样的方法定义:define("FF_SIMFANG",9);(其中为了容易理解,其格式为:使用“FF_”开头加字体名,“9“为该常量的值,只要不和他原来的值相同,哪个数值都没问题的,只要不太大)
现在进行影射:
找到这个注释"// CONSTRUCTOR"(到这里,聪明的你一定知道怎么回事了),在数组里加入类似:
FF_SIMFANG=>array(FS_NORMAL=>'simfang',FS_BOLD=>'',FS_ITALIC=>'',FS_BOLDITALIC=>''),的项,该数组是有四个项,第一个为标准字体,第二个为粗体,第三个为斜体,第四个是粗斜体。每一项对应一个字体文件,他们的值就是去了扩展名的字体文件名,没有的话就不用填,除了标准以外。
来到这里,一般的英文字体的添加已经完成,但中文就还是被限制了,关键在以下地方:
找到LanguageConv类,即查找“class LanguageConv”
在函数Convert()里“elseif( $aFF === FF_SIMSUN )”这个地方用或(“||”)添加你之前定义的字体名,如”$aFF===FF_SIMFANG“
- jpgraph中文显示问题的简洁版
- 关于jpGraph的中文显示。。。。
- PHP jpgraph 中文显示
- 如何解决JpGraph中文乱码的问题
- 关于Jpgraph 的中文乱码问题
- JPGraph中文乱码问题
- JPGraph中文乱码问题
- JpGraph中文乱码问题
- JpGraph中文乱码问题
- JpGraph中文乱码问题
- jpgraph的中文乱码
- 关于jpgraph中文乱码问题
- php jpgraph的中文乱码问题及解决方法
- 关于jpgraph的日文问题
- JpGraph Error: 25049 JpGraph字体问题 的解决办法
- jpgraph輸出中文的問題
- php中文报表的jpgraph实现
- 解决jpgraph在php7.0版本下时,无法显示例子图表的问题
- High Performance MySQL Second Edition
- 忘记mysql密码的一种解决办法
- wxpython grdi使用table时添加行的处理
- java常见错误以及可能原因集锦
- Hibernate、Spring和Struts工作原理及使用理由
- jpgraph中文显示问题的简洁版
- Android的计量单位px,in,mm,pt,dp,dip,sp
- 细线表格
- 理解数据库范式【转载+修改】
- ubuntu 看 .chm 电子书
- 多線程之TMultiReadExclusiveWriteSynchronizer(多讀一寫同步)
- tomcat,myeclipse相关知识(配置服务器)
- java初学者必看:你必须理解的五大问题
- 跟专家学软件工程