在confluence上传excel文件,预览时发现乱码问题主要是因为再上传文件的时候一般是Windows下的文件上传,而预览的时候,是linux下的环境,由于linux下没有微软字体,所以预览的时候无法识别文档字体,所以才会出现乱码。还比如某个业务有个功能生成图片,结果图片里的字全变空格了,这也是服务器上没相应的字库造成的。解决办法:在服务器上安装中文字体。操作方法如下:
1)先安装想要的字体, 如楷体等, 从本机"c盘->Windows-Fonts"文件夹里复制simkai字体拷到confluence部署机上(也可以多下载几个字体放过去)。2)在linux系统下安装新字体linux用fontconfig来安装字体库[root@confluence-server ~]# yum -y install fontconfig #一般是默认自带的安装成功后,在/usr/shared目录就可以看到fonts和fontconfig目录了(之前是没有的)[root@confluence-server ~]# ll -d /usr/share/fonts/ [root@confluence-server ~]# ll -d /usr/share/fontconfig/drwxr-xr-x. 3 root root 4096 11月 9 2017 /usr/share/fontconfig/添加中文字体,如上面的楷体simkai字体文件到confluence部署机的/usr/share/fonts下的某个目录下(比如新建一个windowsfonts目录放进去)[root@confluence-server ~]# cd /usr/share/fonts/[root@confluence-server fonts]# mkdir windowsfonts[root@confluence-server fonts]# ll windowsfonts/总用量 4044-rwxr-xr-x 1 root root 4135804 8月 17 2004 simkai.ttf紧接着需要修改windowsfonts目录的权限:[root@confluence-server ~]# chmod -R 755 /usr/share/fonts/windowsfonts/接下来需要安装ttmkfdir来搜索目录中所有的字体信息,并汇总生成fonts.scale文件[root@confluence-server ~]# yum -y install ttmkfdir #一般会默认自带然后执行ttmkfdir命令[root@confluence-server ~]# cd /usr/share/fonts/windowsfonts/[root@confluence-server windowsfonts]# mkdir -p /usr/share/X11/fonts/encodings/encodings.dir[root@confluence-server windowsfonts]# ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir发现在/usr/share/fontconfig/windowsfonts/目录下多了个fonts.scale[root@confluence-server windowsfonts]# cat fonts.scale 2simkai.ttf -misc-KaiTi_GB2312-medium-r-normal--0-0-0-0-c-0-ascii-0simkai.ttf -misc-KaiTi_GB2312-medium-r-normal--0-0-0-0-c-0-iso10646-1最后一步就是修改字体配置文件了,首先通过编辑器打开配置文件,可以看到一个Font list,即字体列表,在这里需要把我们添加的中文字体位置加进去:[root@confluence-server windowsfonts]# vim /etc/fonts/fonts.conf......./usr/share/fonts /usr/share/X11/fonts/Type1 /usr/share/X11/fonts/TTF /usr/local/share/fonts /usr/share/fonts/windowsfonts #添加这一行~/.fonts
========================================================================
以上是将字体直接安装到服务器上,还可以将字体安装到java服务程序里,步骤如下:1)下载宋体字体文件simsun.ttc(或者直接下载simsun.ttf)2)将该文件复制到$JAVA_HOME/jre/lib/fonts目录下,改名为simsun.ttf3) 重启java服务进程