JFreeChart 生成图表 在linux服务器中文乱码问题
来源:互联网 发布:淘宝店铺代理运营 编辑:程序博客网 时间:2024/05/08 18:32
JFreeChart 生成图表 在linux服务器中文乱码问题
java中用JfreeChart可以生成图表,而不借助于flash,js,canvas等技术;
图表中的文字生成依赖于系统本地字体,但在Linux服务器上,中文字体缺失,进而引起图表中的中文乱码问题;
如下方法可以解决该问题:
- 在项目中加入ttf字体文件;
- 代码中通过该字体文件创建Font对象;
- 通过该Font对象控制图表中文字样式,即可避免中文乱码,同时,避免项目移植引起的字体样式丢失;
还有另一种解决方案
- 给程序所在的Linux服务器安装相应的字体,这样就不需要在程序包中加入字体文件;
- 但,程序移植到其他服务器之后字体样式将丢失;
以下是从字体文件创建Font的代码:
private static java.io.File file = null;private static void initFontFile() {if (file == null) {String vPath = ChartUtil.class.getClassLoader().getResource("").getPath();vPath = vPath + File.separator + "fonts" + File.separator + "simhei.ttf";file = new java.io.File(vPath);}}private static Font getFont(int style, Float size) {Font defFont = new Font("黑体", style, 12);try {initFontFile();if (file == null || !file.exists()) {return defFont;}java.io.FileInputStream fi = new java.io.FileInputStream(file);Font nf = Font.createFont(Font.TRUETYPE_FONT, fi);fi.close();// 这一句需要注意// Font.deriveFont() 方法用来创建一个新的字体对象nf = nf.deriveFont(style, size);return nf;} catch (Exception e) {}return defFont;}
本文链接:http://blog.csdn.net/tomorrow13210073213/article/details/52159369
0 0
- JFreeChart 生成图表 在linux服务器中文乱码问题
- 解决使用JFreeChart生成图表在Linux服务器上显示乱码问题
- JFreeChart生成图表中文乱码问题解决方案
- JFreeChart生成图表中文乱码问题解决方案
- JFreeChart生成图表中文乱码问题解决方案
- jfreechart在linux下的中文乱码问题
- 在Linux平台下的JFreeChart中文乱码的问题
- jfreechart在linux下的中文乱码
- Linux环境下JFreeChart图表标题乱码问题
- JFreeChart 中文乱码问题
- jfreechart中文乱码问题
- jfreechart中文乱码问题
- 在linux服务器上生成jsp文件,中文变乱码的问题
- linux环境下jfreechart生成的图形中文乱码
- jfreeChart在Linux下的中文问题
- jfreechart在linux下中文不显示或乱码的问题
- jfreechart部署linux服务器生成图片乱码解决方案
- jfreechart的中文乱码问题
- 对设计模式理解
- 数据结构上机测试2-2:单链表操作B
- JDK安装与配置检验
- Could neither find file "toplevel.cmake" in any workspace nor relative
- hdu1106
- JFreeChart 生成图表 在linux服务器中文乱码问题
- (复习)数据结构--堆--附模板
- 对像素的整理
- 技术总结_广播
- 项目经理应该知道的97件事--阅读感想
- 08 为什么要有接口?接口与继承的区别?
- mysql中insert的三种用法
- android 利用listview实现老虎机
- c3p0简单使用