Linux下的JFreeChart中文乱码解决(图片生成后中文显示为“口”)

JFreeChart默认字体有"Arial", "Dialog", "Dialog", "SansSerif", "Tahoma"
而需要用到是宋体等中文字体时,JVM找不到相关字体文件,所以会显示乱码,解决方法如下。

1.复制所使用的中文字体文件(如simsun.ttc)到此目录中(如果没有fallback目录,请手动建立。)
$JAVA_HOME/jre/lib/fonts/fallback

2.或者将Linux系统的字体目录作为JDK下面的一个字体目录连接。
ln -s $FONTS_PATH/FONT_DIR $JAVA_HOME/jre/lib/fonts/fallback

为何要建立fallback目录请参照下面的连接:http://java.sun.com/j2se/1.5.0/docs/guide/intl/fontconfig.html
sequence.fallback的说明:
If the runtime environment has a directory lib/fonts/fallback and this directory contains valid TrueType or Type 1 fonts, the runtime automatically adds these fonts as fallback fonts for 2D rendering. On Windows, if there is a system EUDC (End User Defined Characters) font registered with Windows, the runtime automatically adds this font as well as a fallback font for 2D rendering

你可能感兴趣的:(java,windows,linux,jfreechart,dialog,fonts)