当报表部署到 linux 时,呈现了字体问题,可能的起因有:
1.Linux 零碎短少字体
2.Linux 零碎短少字符集
3.jdk 未胜利加载字体
配置中文字体
- fc-list 查看字体列表
- yum -y install fontconfig 装置字体库
装置实现后,在 /usr/share 目录就能够看到 fonts 和 fontconfig 目录了(之前是没有的)
3. 首先在 /usr/share/fonts 目录下新建一个目录 chinese:将所需的字体上传至 /usr/share/fonts/chinese 目录下
4. 批改 chinese 目录的权限:
chmod -R 755 /usr/share/fonts/chinese
5. 装置 ttmkfdir 来搜寻目录中所有的字体信息,并汇总生成 fonts.scale 文件,输出命令:
yum -y install ttmkfdir
而后执行 ttmkfdir 命令即可:
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
6. 批改字体配置文件了,首先通过编辑器关上配置文件:
vim /etc/fonts/fonts.conf
能够看到一个 Font list,即字体列表,在这里须要把咱们增加的中文字体地位加进去:
7. 不必重启,刷新内存中的字体缓存使配置对系统失效:
fc-cache
增加中文字符集
Locale 而后查看零碎以后字符集
yum -y groupinstall chinese-support 下载字符集
vim /etc/sysconfig/i18n 将字符集配置到零碎变量中
将变量 LANG 的值设置为:“zh_CN.UTF-8”。
即:LANG=zh_CN.UTF-8
编辑保留之后,留神要从新载入此文件。
从新载入命令:. /etc/profile
应用命令 echo $LANG 能够看到输入:zh_CN.UTF-8,证实设置胜利。
另外应用 locale 命令也能够看到,字符集曾经胜利设置:
给 JDK 增加字体
- 进入 JDK 的目录,如果没有 fonts 目录,自行创立
echo $JAVA_HOME
cd $JAVA_HOME/jre/lib/fonts
- 创立目录
mkdir fallback
cd fallback
- 将所须要的中文字体拷贝过去
- 失效
mkfontscale
mkfontdir
如果运行 mkfontscale 命令时终端提醒 mkfontscale: command not found,则须要首先装置这个命令
使 mkfontscale 和 mkfontdir 命令失常运行
yum install mkfontscale
使 fc-cache 命令失常运行。如果提醒 fc-cache: command not found
yum install fontconfig
或者将 Linux 零碎的字体目录作为 JDK 上面的一个字体目录连贯
ln -s $FONTS_PATH/FONT_DIR $JAVA_HOME/jre/lib/fonts/fallback