依赖于AWT的绘图组件,在Linux下运行里可能会发现,图片里的中文全部显示为方框。
而在使用AWT的Font时,我们指定都是Java中的虚拟字体,显示为方框是因为虚拟字体对应不到操作系统的实际字体。
我们的程序在一台Fedora12的Linux下出现了乱码,而在RHLE5上却没有这个问题。
尝试修改fedora的语言和编码设置,没有作用。
按照网上的一种简单方式解决了这个问题。
就是
1、在linux上,$JAVA_HOME\jre\lib\fonts下面创建fallback目录
2、直接从xp系统c:\windows\fonts下面复制simsun.ttc文件,复制到fallback目录下,
3、假设JAVA_HOME=/usr/java/jdk1.5.0_22,执行下来命令:
ln -s /usr/share/fonts/truetype/simsun.ttf /usr/java/jdk1.5.0_22/jre/lib/fonts/fallback/simsun.ttf
就可以了。