php JpGraph使用和中文乱码

使用


在使用JpGraph的时候我一般是把它的类库放到了程序的根目录下面
(解压之后的src中的文件,除了Examples文件夹之外)在用的时候只需要include就可以了

 

还可以将解压之后的src中的文件重命名为jpgraph,将它放到d盘,再在php.ini文件中添加到include_path中,

我的如下:
include_path = ".;c:/php/includes;d:/wamp/library;d:/jpgraph"

 

 

中文乱码

 

JpGraph是一个PHP的图形类库,可以方便地生成各种柱状图,饼图,折线图等等,而且还可以方便地加文字

。但是,中文的情况就稍微麻烦了一点。在JpGraph中默认是要把字符串转成utf8的,但是如果你的文件本身

就是utf8的,并且要用中文字体,它还会转一遍,结果多转了一次,就会出现乱码。

除了编码问题,还有就是字体问题。为了试验中文显示,专门拷了一个simsun.ttc过来是,在代码里用

FF_SIMSUN就可以正确显示中文,但是如果改用自己设置的FF_CHINESE,也就是uming.ttf,就又乱码了,而

且和simsun.ttf乱码时的不一样。 后来发现FF_CHINESE和FF_BIG5是一样,是繁体字体,所以和用FF_SIMSUN

的乱码还不一样。

解决以上问题的方法也就是传递正确的中文字符串给JpGraph,所以可以把字符串先转成gb2312的,这样

JpGraph就可以正确转换了。当然,这个方法比较麻烦,每次都需要,
还可以直接修改jpgraph_ttf.inc.php。我的JpGraph为3.0.7版本,大概在178到186行之间的代码改为如下:
 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;
        }
但是我还是不喜欢改动源码,可以用iconv("UTF-8","GB2312//IGNORE","简体中文 繁體中文 test")函数
先将要显示的字转换为GB2312。
 
右上角的那些中文显示有点难度,因为那个类没有SetFont方法,也就是说那东西是不能显示中文的。所以我

就改了基础类库
修改了jpgraph_legend.inc.php文件里的。
class Legend 类中有这样一句
   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了。

下面是一个简单列子:
<?php
include 'jpgraph/jpgraph.php';
include 'jpgraph/jpgraph_line.php';

$data = array(19 , 23 , 34 ,36, 50 , 60 , 65, 70 , 78); //模拟数据
$graph = new Graph($width = 400 , $height = 300); //创建新的Graph对象
$graph->SetScale("textlin"); //设置刻度模式
$graph->img->SetMargin(30 , 30 , 80 , 30) ; //设置图表边界

$graph->title->Set(iconv("UTF-8","GB2312//IGNORE","简体中文 繁體中文 test")) ; //设置图表标题
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); // 设置中文字体
$graph->title->SetFont(FF_CHINESE,FS_BOLD);
$lineplot = new LinePlot($data); //创建新的LinePlot对象
$lineplot->SetLegend(iconv("UTF-8","GB2312//IGNORE","数据1"));//设置图例文字
$graph->subtitle->SetFont(FF_SIMSUN);
$graph->subsubtitle->SetFont(FF_SIMSUN);
$lineplot->SetColor("red"); //设置曲线颜色
$graph->Add($lineplot); //在统计图上绘制曲线

$data2 = array(20 ,30 ,45 , 23 , 45 , 69 , 60 , 79 , 80);
$lineplot = new LinePlot($data2); //创建新的LinePlot对象
$lineplot->SetLegend(iconv("UTF-8","GB2312//IGNORE","数据2"));//设置图例文字
$lineplot->SetColor("blue"); //设置曲线颜色
$graph->Add($lineplot); //在统计图上绘制曲线
$graph->Stroke() ; //输出图像*/

 

远行时没有乱码就行了,效果如下:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/60013.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++输出中文乱码解决方法

C 输出中文乱码问题 今天在写C时发现当cout中出现中文时&#xff0c;输出便会出现乱码&#xff0c;后来发现只需要加入如下语句就可以解决 system("chcp 65001");未加入之前&#xff1a; 可以看见出现了乱码&#xff0c;连下面那句英文的都没有输出&#xff01; 加…

PrintWriter printWriter 在网页输出显示中文,问号乱码解决方法

如图&#xff0c;当我们输入url后&#xff0c;运行Tomcat会出现问号乱码 只需要在上面添加一句 res.setContentType("text/html;charsetUTF-8"); 就行

编辑器写C语言输出中文乱码记录

记录 在写C语言时&#xff0c;有时候需要使用printf输出中文&#xff0c;如果使用IDE来写代码&#xff0c;例如使用VisualStudio&#xff0c;输出中文没有问题。但是当使用编辑器编译器的方式写代码&#xff0c;在这个环境下输出中文可能会遇到中文输出乱码。 环境 编辑器&a…

解决 PHP 输出中文乱码的问题

本文由荒原之梦原创&#xff0c;原文链接&#xff1a;http://zhaokaifeng.com/?p1340 解决 PHP 输出中文乱码的问题 问题描述 今天给导航狗(https://daohanggou.cn/)的 PHP 程序和数据库文件迁移了服务器, 但是迁移到新的服务器上之后 PHP 输出的中文和 PHP 输出的从 MySQL…

C语言输出中文乱码

因为MinGW是使用的UTF-8编码&#xff0c;而cmd是使用的GBK编码&#xff0c;所以会出现这种情况&#xff0c;输入数据为GBK&#xff0c;但是输出数据为UTF-8 如上图&#xff0c;修改之后就会成功输出中文字符串

BAT文件执行输出中文乱码

一、问题描述&#xff1a; BAT文件执行输出中文乱码&#xff1a; echo offecho 你好&#xff0c;世界pause二、原因分析&#xff1a; 出现乱码&#xff0c;极有可能是编码的问题 打开cmd在标题栏单击鼠标右键选择【属性】在属性-选项中可看到当前编码方式当前代码页936 然而…

Qt 应用程序输出中文乱码+UI界面输出中文乱码

本文的主要解决方法来自于博客&#xff08;Qt与MSVC中文乱码问题的解决方案_liuweilhy的博客-CSDN博客&#xff09;&#xff0c;特此鸣谢。 1.背景 今天心血来潮&#xff0c;将Qt编译器改为msvc 2019 64&#xff0c;应用程序中qdebug输出和界面输出的中文均出现乱码&#xff…

原创 | 一文读懂强化学习在动态规划领域的应用

作者&#xff1a;黄娘球本文约1600字&#xff0c;建议阅读5分钟 本文澄清易混淆基础概念、推导公式为主&#xff0c;回顾强化学习基础知识。 ChatGPT已成为继AlphaGo之后的社会现象级人工智能&#xff0c;引发了大模型研究的热潮。戴琼海院士提出&#xff0c;五年后大模型将成为…

LLM推理提速2.8倍,CMU提出投机式推理引擎,小模型撬动大模型高效推理

©作者 | 机器之心编辑部 来源 | 机器之心 近日&#xff0c;来自卡耐基梅隆大学&#xff08;CMU&#xff09;的 Catalyst Group 团队发布了一款「投机式推理」引擎 SpecInfer&#xff0c;可以借助轻量化的小模型来帮助大模型&#xff0c;在完全不影响生成内容准确度的情况下…

Python爬虫爬取各大热门短视频平台视频

1、开发工具 Python3.9 requests库 其他一些Python内置库 pycharm 2、第三方库 安装第三方库 pip install requests 3、实现思路 1、利用tkinter库实例化一个GUI界面&#xff0c;包含提示框、输入框、选择按钮、功能按钮。 2、用requests发送get请求&#xff0c;获得下…

短视频素材:17个视频网站,涨粉必上热门

2022年来了&#xff0c;加入短视频大军的人越来越多&#xff0c;但视频素材&#xff0c;视频制作一直是个门槛。 今天就给大家分享17个短视频素材网站&#xff01; 1、Coverr&#xff1a;&#xff08;https://coverr.co&#xff09; 很好很强大的免费视频素材网站&#xff0c…

CnOpenData短视频播主排名数据

一、数据简介 短视频即短片视频&#xff0c;是一种互联网内容传播方式&#xff0c;一般是指在互联网新媒体上传播的时长在5分钟以内的视频。随着网红经济的出现&#xff0c;视频行业逐渐崛起一批优质UGC内容制作者&#xff0c;微博、秒拍、快手、今日头条纷纷入局短视频行业&am…

短视频App对比分析报告

行业发展环境及现状对比 市场特点 优点&#xff1a; 短视频内容生产门槛低&#xff0c;内容产量大。 内容形式直观&#xff0c;信息携带量大&#xff0c;体量小巧。短视频信息量大&#xff0c;在流量及时间上消耗低&#xff0c;使用方式/场景灵活&#xff0c;符合移动互…

今年最火的APP,你更喜欢哪一个?#2019短视频APP排行榜#

用流量看视频已经不再是一种奢侈行为,并且人们更愿意自拍视频分享自己的生活来博取大众一笑,而短视频app就给了所有人一个展示的机会,你可以在上面自拍,也可以看别人分享的视频,那么如今最火的短视频app是哪个?短视频app哪个好呢?来看看榜单吧! 2019短视频APP排行榜 …

2023 ICCAD Contest Problem C ML for IR drop 赛题解析

文章目录 问题简述问题背景问题描述与目标评估指标 以往工作PowerNet: Transferable Dynamic IR Drop Estimation via Maximum Convolutional Neural NetworkThermal and IR Drop Analysis Using Convolutional Encoder-Decoder Networks(EDGe)BeGAN: Power Grid Benchmark Gen…

In-Context Learning开卷视觉任务,DeepMind提出快速适应新任务的“蜂鸟”模型

​ 论文链接&#xff1a;https://arxiv.org/abs/2306.01667 近来&#xff0c;随着ChatGPT和GPT-4等大模型的火热&#xff0c;使得学术界开始更多的关注于大模型背后的一些关键新技术&#xff0c;例如与ChatGPT高度相关的In-Context Learning&#xff08;情景学习&#xff0c;也…

怎样找一张图片的原图、出处?最全搜图网站+具体案例分享

前不久随手帮一网友找了张图&#xff0c;想了想中间的经历挺有意思&#xff0c;所以今天打算来说说以图搜图这个话题 第一部分&#xff0c;先介绍常用的识图引擎第二部分&#xff0c;想分享一下阿虚自己的搜图经验&#xff0c;也是今天主要想分享的。 ▍1 首先推荐几个识图引…

这几个免费、商用图片素材网,你一定要知道。

很多朋友不知道去哪里找图片素材&#xff0c;找到了又担心会不会侵权。 今天给大家分享6个免费可商用图片素材网站&#xff0c;这下再也不用担心找不到素材或侵权啦&#xff01; 1、菜鸟图库 传送门&#xff1a;https://www.sucai999.com/pic.html?vNTYxMjky 网站素材资源量…

6个高清图片素材网站,找图片素材就靠他们了

6个高质量图片素材网站&#xff0c;建议收藏&#xff01; 1、菜鸟图库 https://www.sucai999.com/?vNTYwNDUx 菜鸟图库虽然是一个设计网站&#xff0c;但素材库非常大&#xff0c;除了有设计类素材之外还有很多视频、音频、办公类等素材&#xff0c;图片素材就有好几十万张&a…

8个免费图片素材网,赶紧收藏起来

现在图片素材变得越来越重要了&#xff0c;除了平常设计经常要用到图片之外&#xff0c;大到平常文章、自媒体、视频制作配图&#xff0c;小到我们发朋友圈、日志、说说&#xff0c;都会用到图片来衬托。 但图片版权一直是设计师、自媒体和各大企业的一大难题。 要不就花钱买…