用swing做的界面,在打包成jar包移植到ubuntu下的时候,首先出现了个别文字是小方块的问题,发现是由于ubuntu下的jdk缺少字体文件。
1.下载windows底下的simsun.ttc文件
2.找到ubuntu系统下jdk安装目录下的fonts文件
3.在fonts文件新建一个文件夹fallback,将字体文件拷贝到该文件夹下
解决了这个问题,发现木有小方块出现了,都是中文字体了,但是字确有大有小,难不成文件字体没导全?但是还需要导哪些呢?换个思路,想能不能强制swing的字体为宋体呢?果然用代码在程序里强制默认字体为宋体,问题得到解决。
具体如下:
try {
UIManager.setLookAndFeel(new NimbusLookAndFeel() {
@Override
public UIDefaults getDefaults() {
UIDefaults ret = super.getDefaults();
ret.put("defaultFont", new Font("宋体", Font.PLAIN, 12));
return ret;
}
});
} catch (UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}