1. 程式人生 > >問題記錄之用poi生成圖片並插入到word時,圖片中的中文顯示不出來

問題記錄之用poi生成圖片並插入到word時,圖片中的中文顯示不出來

ubuntu ttf 第一個 方案 chmod table ber dot 命名

問題原因:linux中沒有相關中文字體

解決方案:在linux中安裝中文字體

有兩種方式可以添加字體,第一種是在java環境下安裝字體,第二種是在linux中安裝字體

一.在java環境下安裝字體

1、新建目錄

在%JAVA_HOME%/jre/lib/fonts 文件夾下,新建文件夾,命名為 fallback。

註意:是JAVA_HOME不是JRE_HOME

2、添加中文字體

將SimSun.ttc的字體文件拷貝到新建的%JAVA_HOME%/jre/lib/fonts/fallback目錄下。

通過以上的操作,訂閱報表的圖形上的文字就不再亂碼了。

二.在linux中安裝字體

linux系統的字體文件放在/usr/share/fonts/

目錄以及用戶的~/.fonts~/.local/share/fonts目錄下,第一個位置為系統所用用戶共享,將字體安裝到這個目錄需要管理員權限;後面兩個位置則為當前登陸用戶所有,安裝字體到這個目錄不需要管理員權限。

  1. 安裝到 /usr/share/fonts/ (需要管理員權限)
wget https://github.com/fangwentong/dotfiles/raw/master/ubuntu-gui/fonts/Monaco.ttf
sudo mkdir -p /usr/share/fonts/custom
sudo mv Monaco.ttf /usr/share/fonts/custom
sudo chmod 744 /usr/share/fonts/custom/Monaco.ttf

sudo mkfontscale #生成核心字體信息
sudo mkfontdir
sudo fc-cache -fv
  1. 安裝到 ~/.fonts/ (安裝到 ~/.local/share/fonts 原理相同)
wget https://github.com/fangwentong/dotfiles/blob/ubuntu/fonts/Monaco.ttf?raw=true
mkdir -p ~/.fonts
mv Monaco.ttf ~/.fonts
fc-cache -vf #刷新系統字體緩存

問題記錄之用poi生成圖片並插入到word時,圖片中的中文顯示不出來