報表中發現有中文亂碼和中文字體不整齊(重疊)的情況,首先考慮的就是操作系統是否有中文字體,在CentOS 7中發現輸入命令查看字體列表是提示命令無效:
如上圖可以看出,不僅沒有中文字體,連字體庫都沒有,那麼接下來就記錄一下在Linux CentOS 7中如何安裝字體庫以及中文字體。
在CentOS 4.x開始用fontconfig來安裝字體庫,所以輸入以下命令即可:
yum -y install fontconfig
當看到下圖的提示信息時說明已安裝成功:
這時在/usr/shared目錄就可以看到fonts和fontconfig目錄了(之前是沒有的):
接下來就可以給我們的字體庫中添加中文字體了。
在CentOS中,字體庫的存放位置正是上圖中看到的fonts目錄,所以我們首先要做的就是找到中文字體文件放到該目錄下,而中文字體文件在我們的windows系統中就可以找到,打開c盤下的Windows/Fonts目錄:
如上圖,我們只需要將我們需要的字體拷貝出來並上傳至linux服務器即可,在這裡我選擇宋體和黑體(報表中用到了這兩種字體),可以看到是兩個後綴名為ttf和ttc的文件: 在這之前我們還需要新建目錄,首先在/usr/shared/fonts目錄下新建一個目錄chinese:
然後就是將上面的兩個字體上傳至/usr/shared/fonts/chinese目錄下即可:
緊接著需要修改chinese目錄的權限:
chmod -R 755 /usr/share/fonts/chinese
接下來需要安裝ttmkfdir來搜索目錄中所有的字體信息,並匯總生成fonts.scale文件,輸入命令:
yum -y install ttmkfdir
當看到下圖的提示信息時說明已安裝成功:
然後執行ttmkfdir命令即可:
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
最後一步就是修改字體配置文件了,首先通過編輯器打開配置文件:
vi /etc/fonts/fonts.conf
可以看到一個Font list,即字體列表,在這裡需要把我們添加的中文字體位置加進去: 然後輸入:wq保存退出,最後別忘了刷新內存中的字體緩存,這樣就不用reboot重啟了:
fc-cache
這樣所有的步驟就算完成了,最後再次通過fc-list看一下字體列表:
可以看到已經成功安裝上了中文字體,至此安裝過程就全部結束,再次查看報表可以發現中文樣式和內容均已可以正常顯示了。
簡單記錄一下在CentOS 7中安裝字體庫以及中文字體的問題,希望對遇到同樣問題的同學有所幫助,The End。
http://xxxxxx/Linuxjc/1134298.html TechArticle