做项目中用到了jfreechart用来显示统计课程排行的结果,但是在xp下显示正常,但是在linux下显示中文乱码 类似 口口口之类的
在网上搜了些,一开始由于对linux不太熟悉,也就没有解决问题,现在学习了一段fedora后,重新解决了这个问题
首先 将xp下的 simsun.ttc字体拷贝到 linux下,放在 linux的 %JAVA_HOME%/jre/lib/fonts目录下 然后修改目录下的 fonts.dir文件 将首行的数字 +1 比如 122变为123 ,然后在最后一行加上:
simsun.ttc -SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0
然后保存 ,如果是只读文件 的话 要强制保存 :w!
最后 在 含有 jfreechat的程序中 设置如下:
CategoryPlot plot = this.chart.getCategoryPlot()
plot.setForegroundAlpha(0.6F);
chart.setTitle(new TextTitle(chart.getTitle().getText(),new Font("宋体", 1, 13)));
CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setLabelFont(new Font("宋体", 1, 12));
domainAxis.setTickLabelFont(new Font("宋体", 0, 10));
NumberAxis numberaxis = (NumberAxis)plot.getRangeAxis();
numberaxis.setTickLabelFont(new Font("宋体", 0, 12));
numberaxis.setLabelFont(new Font("宋体", 0, 12));
domainAxis.setLowerMargin(0.01D);
domainAxis.setUpperMargin(0.01D);
示例2
1. 在/usr/share/fonts/zh_CN/TrueType 下
添加文件C:\WINDOWS\Fonts\simsun.ttc
2. 在jdk/jre/lib下
添加font.properties.zh.Redhat1.0
3.若用tomcat
在tomcat/bin/setclasspath.sh 中增加
CATALINA_OPTS= "-Djava.awt.headless=true "
export CATALINA_OPTS
font.properties.zh.Redhat1.0文件如下:
# @(#)font.properties.ja.linux 1.7 02/03/07
#
# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
#
# Component Font Mappings For RedhatLinux 8.0/zh_CN
#
serif.0=-b&h-lucidabright-medium-r-normal--*-%d-*-*-p-*-iso8859-1
serif.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
serif.italic.0=-b&h-lucidabright-medium-i-normal--*-%d-*-*-p-*-iso8859-1
serif.italic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
serif.bold.0=-b&h-lucidabright-demibold-r-normal--*-%d-*-*-p-*-iso8859-1
serif.bold.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
serif.bolditalic.0=-b&h-lucidabright-demibold-i-normal--*-%d-*-*-p-*-iso8859-1
serif.bolditalic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
sansserif.0=-b&h-lucidasans-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1
sansserif.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
sansserif.italic.0=-b&h-lucidasans-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1
sansserif.italic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
sansserif.bold.0=-b&h-lucidasans-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1
sansserif.bold.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
sansserif.bolditalic.0=-b&h-lucidasans-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1
sansserif.bolditalic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
monospaced.0=-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1
monospaced.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
monospaced.italic.0=-b&h-lucidatypewriter-medium-i-normal-sans-*-%d-*-*-m-*-iso8859-1
monospaced.italic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
monospaced.bold.0=-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1
monospaced.bold.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
monospaced.bolditalic.0=-b&h-lucidatypewriter-bold-i-normal-sans-*-%d-*-*-m-*-iso8859-1
monospaced.bolditalic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialog.0=-b&h-lucidasans-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1
dialog.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialog.italic.0=-b&h-lucidasans-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1
dialog.italic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialog.bold.0=-b&h-lucidasans-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1
dialog.bold.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialog.bolditalic.0=-b&h-lucidasans-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1
dialog.bolditalic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialoginput.0=-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1
dialoginput.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialoginput.italic.0=-b&h-lucidatypewriter-medium-i-normal-sans-*-%d-*-*-m-*-iso8859-1
dialoginput.italic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialoginput.bold.0=-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1
dialoginput.bold.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
dialoginput.bolditalic.0=-b&h-lucidatypewriter-bold-i-normal-sans-*-%d-*-*-m-*-iso8859-1
dialoginput.bolditalic.1=-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1
# Missing Glyph Character
#
default.char=274f
# Component Font Character Encodings
#
fontcharset.serif.0=sun.io.CharToByteISO8859_1
fontcharset.serif.1=sun.io.CharToByteUnicodeBigUnmarked
fontcharset.sansserif.0=sun.io.CharToByteISO8859_1
fontcharset.sansserif.1=sun.io.CharToByteUnicodeBigUnmarked
fontcharset.monospaced.0=sun.io.CharToByteISO8859_1
fontcharset.monospaced.1=sun.io.CharToByteUnicodeBigUnmarked
fontcharset.dialog.0=sun.io.CharToByteISO8859_1
fontcharset.dialog.1=sun.io.CharToByteUnicodeBigUnmarked
fontcharset.dialoginput.0=sun.io.CharToByteISO8859_1
fontcharset.dialoginput.1=sun.io.CharToByteUnicodeBigUnmarked
# Exclusion Ranges
#
# XFontSet Information
#
fontset.serif.plain=
-b&h-lucidabright-medium-r-normal--*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.serif.italic=
-b&h-lucidabright-medium-i-normal--*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.serif.bold=
-b&h-lucidabright-demibold-r-normal--*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.serif.bolditalic=
-b&h-lucidabright-demibold-i-normal--*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.sansserif.plain=
-b&h-lucida-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.sansserif.italic=
-b&h-lucida-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.sansserif.bold=
-b&h-lucida-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.sansserif.bolditalic=
-b&h-lucida-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.monospaced.plain=
-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.monospaced.italic=
-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.monospaced.bold=
-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.monospaced.bolditalic=
-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialog.italic=
-b&h-lucida-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialog.bold=
-b&h-lucida-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialog.bolditalic=
-b&h-lucida-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialog.plain=
-b&h-lucida-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialoginput.italic=
-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialoginput.bold=
-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialoginput.bolditalic=
-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.dialoginput.plain=
-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
fontset.default=
-b&h-lucida-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1,
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0
filename.-misc-simsun18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/simsun.ttc
分享到:
相关推荐
Linux下JFreechart中文乱码的解决.docx
这个文件可以用来解决JFreeChart在Linux下显示中文乱码的问题。 解决步骤如下: 1. **安装字体**:首先,你需要将“simsun.ttc”字体文件安装到你的Linux系统中。这通常涉及到将字体文件复制到系统的字体目录...
**标题与描述解析** 标题“JFreechart在Linux下不显示及中文乱码...通过以上步骤,通常可以解决JFreechart在Linux下的不显示和中文乱码问题。在实际操作过程中,可能还需要结合具体的错误日志和系统配置进行详细排查。
通过以上步骤,你应该能够在Linux环境中成功解决JFreeChart的中文乱码问题。记住,关键在于正确配置字体和确保Java能够找到并使用这些字体。在实际开发过程中,根据具体环境和需求,可能需要进行一些额外的调整。
通过以上步骤,你应该能够成功解决JFreeChart在Linux服务器上生成图片时的中文乱码问题。值得注意的是,这种方法不仅适用于JFreeChart,还适用于其他依赖于Java运行环境显示中文字符的程序。在实际操作中,应根据...
如果问题仍然存在,可能需要检查JFreeChart的版本,因为它可能与特定的字体兼容性问题有关,或者升级到最新版本可能解决问题。 总之,当在Linux下使用JFreeChart遇到“方框框”问题时,通常是因为字体不兼容或缺失...
标题 "jfreechart部署在Linux服务器上生成图片乱码的解决方案" 涉及到的主要知识点是关于Java图形库JFreeChart在Linux环境中的使用,特别是解决中文字符乱码的问题。JFreeChart是一个广泛使用的开源Java库,它允许...
在Linux环境下,使用Java的...总的来说,解决JFreeChart在Linux下的中文乱码问题需要结合系统环境、JFreeChart的API使用以及适当的编码设置。通过正确地配置和使用支持中文的字体,可以确保生成的图表文本清晰易读。
总结来说,解决JFreeChart在Linux下的中文乱码问题,主要涉及调整JVM的字符集设置,正确使用编码,以及在JFreeChart的图表配置中使用支持中文的字体。具体实现细节和步骤需要参考相关的代码示例或博客文章进行操作。
这是一款专为Linux设计的中文字体,包含了大量汉字,可以有效地解决JFreeChart在Linux环境下的中文乱码问题。将“zysong.ttf”字体文件添加到系统中,可以让JFreeChart在绘制图表时能够正确渲染中文字符。 在Java...
通过上述方法,你可以解决在Linux下使用JFreeChart时遇到的中文乱码问题。确保正确配置字符集,选用支持中文的字体,并调整系统字体配置,以确保图表中的中文能够正常显示。在实际应用中,可能还需要根据具体环境...
通过以上分析,我们可以看到,理解和使用JFreeChart源码不仅可以解决在Linux环境下中文乱码的问题,还能帮助我们更好地控制和定制图表的显示效果。对于需要在Java项目中展示数据或者创建复杂图表的开发者来说,深入...
### jfreechart乱码问题详解 #### 一、问题背景 在使用jFreeChart进行图表绘制时,可能会遇到中文乱码的问题。这个问题主要是由于jFreeChart默认使用的字体不支持中文字符,导致在图表中显示的中文无法正常识别,...
JFreeChart-1.0.13原文件含jar包。 1、JFreeChart生成图片路径教程 2、JFreeChart使用教程(含下载安装,超详细) 3、JFreeChart使用详细教程 ...5、JFreeChart乱码解决方法 等等 包括许多优秀案例
通过以上方法,一般能够解决JFreeChart在Linux下无法显示中文的问题。对于给定的文件“simsun.ttc”,这是一个包含多种简体中文字体的集合文件,可以在Java应用中加载它,以确保JFreeChart在运行时能正确显示中文。 ...
### 如何在openSUSE下解决JFreeChart中文乱码问题 #### 问题背景与描述 在使用openSUSE 10.2操作系统时,可能会遇到JFreeChart图表中的中文字符显示为乱码的情况。这一问题通常是由于Linux版本的Java Development ...
JFreeChart在linux下生成图表时中文乱码,原因是JRE没有找到对应中文字库,解决方法如下:
在Linux环境下,JFreeChart库可能会...通过逐一排查并修正这些点,通常能够成功解决Linux环境下的JFreeChart乱码问题。如果提供的压缩包文件包含了示例代码或配置文件,那么可以根据这些文件进一步分析和调试具体问题。
以下是一份详细的解决方案,帮助你解决JFreeChart在Linux下的中文乱码问题。 首先,了解JFreeChart的编码机制。JFreeChart默认使用的是平台的默认字符集,而在Linux系统中,这个默认字符集可能不支持中文,因此会...
在使用 iReport 和 JFreeChart 生成报表时,可能会遇到图表中文乱码的问题, especially on Linux systems. 这篇文章将详细介绍这个问题的解决方案。 问题描述 当我们使用 iReport 和 JFreeChart 生成报表时,可能...