快速业务通道

解决JPGraph的中文乱码问题

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22

JPGraph处理有中文字符时都会转成utf8编码后显示,我们只需注释掉相关的代码就可以了。

Dotproject苷特图中文乱码解决具体步骤如下:

1。修改jpgraph库

打开dotproject \lib\jpgraph\jpgraph\src\jpgraph.php文件,找到下面代码段

 

  function Convert($aTxt,$aFF) {
if( LANGUAGE_CYRILLIC ) {
   if( CYRILLIC_FROM_WINDOWS ) {
 $aTxt = convert_cyr_string($aTxt, "w", "k");
   }
   $isostring = convert_cyr_string($aTxt, "k", "i");
   $unistring = LanguageConv::iso2uni($isostring);
   return $unistring;
}/* 注释掉下面代码段
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);
}
elseif( $aFF === FF_CHINESE ) {
   if( !function_exists(''iconv'') ) {
 JpGraphError::Raise(''Usage of FF_CHINESE (FF_BIG5) font family requires that your PHP setup has the iconv() function. By default this is not compiled into PHP (needs the "--width-iconv" when configured).'');
   }
   return iconv(''BIG5'',''UTF-8'',$aTxt);
}注释到此结束*/
else
   return $aTxt;
  }

2.修改dotproject中用到jpgraph的模块

a. 改project模块

打开dotproject\modules\projects\gantt.php文件,修改文件中下面的代码

将所有

arialbd.ttf

simsum.ttc

替换

将所有

FF_ARIAL

FF_SIMSUN

替换

注释掉下面的代码

//if ( $locale_char_set==''utf-8'' && function_exists("utf8_decode") ) {

//$name = utf8_decode($name);

//}

b.同理修改dotproject\modules\tasks\gantt.php文件

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号