JFreechart中文在AIX下显示方框解决方法

在基于WebSphere做Web开发的时候大多情况下会使用JFreeChart作为Web报表生成工具,但是在AIX平台上经常会出现中文输出乱码或者一个个小方块的情况。这个问题的解决方法

如下:

 

1.在windows中找到fonts下的这几种字体文件(可能显示为中文)
fangsongti.ttf 仿宋体
heiti.ttf  黑体
kaiti.ttf  楷体
songti.ttf 宋体


2.copy字体到aix下的jre的字体目录${JAVA_HOME}/jre/lib/fonts


3.修改JRE的字体配置
  3.1 修改fonts.scale文件[${JAVA_HOME}/jre/lib/fonts/fonts.scale]
      把第一行的数字加4
      在文件尾添加
      fangsongti.ttf -zhongyi-fangsong-medium-r-normal--0-0-0-0-m-0-gbk-0
      heiti.ttf -zhongyi-hei-medium-r-normal--0-0-0-0-m-0-gbk-0
      kaiti.ttf -zhongyi-kai-medium-r-normal--0-0-0-0-m-0-gbk-0
      songti.ttf -zhongyi-song-medium-r-normal--0-0-0-0-m-0-gbk-0
 

  3.2 修改fonts.dir文件[${JAVA_HOME}/jre/lib/fonts/fonts.dir]
       把第一行的数字加4
       在文件尾添加
      fangsongti.ttf -zhongyi-fangsong-medium-r-normal--0-0-0-0-m-0-gbk-0
      heiti.ttf -zhongyi-hei-medium-r-normal--0-0-0-0-m-0-gbk-0
      kaiti.ttf -zhongyi-kai-medium-r-normal--0-0-0-0-m-0-gbk-0
      songti.ttf -zhongyi-song-medium-r-normal--0-0-0-0-m-0-gbk-0

    3.3 修改font.properties.zh文件 [${JAVA_HOME}/jre/lib/font.properties.zh
    把所有的serif.1的值 进行如下替换
   -zhongyi-song-medium-r-normal--0-0-0-0-m-0-gbk-0

 

5.JVM参数设置
在startWebLogic.sh中加入如下启动参数
     -Djava.awt.headless=true -Duser.language=zh -Duser.region=CN -Dfile.encoding=GBK -Dclient.override.encoding=GBK

 

6.重新启动就可以了.

你可能感兴趣的:(JFreechart中文在AIX下显示方框解决方法)