tomcat程式運作的java程式,在導出圖檔時,會出現中文亂碼,也給tomcat server.xml中指定uriencoding="utf-8"參數了,也無效。
這是因為tomcat在處理程式時請求的是系統字型,是以必須系統有中文字型才可以正常進行中文。
像cutycapt、html2image等網站頁面截圖工具,也會出現這樣的亂碼問題。類似于下面:
1、在/usr/share/fonts/下,建立檔案夾winfonts,如果沒有fonts目錄,就安裝fontconfig軟體(系統字型管理),再将win7字型msyh.ttf複制到ubuntu /usr/share/fonts/中。
2、安裝字型,如果沒有下面指令就安裝xfonts-utils工具
# sudo chmod 664 /usr/share/fonts/winfonts/*
# cd /usr/share/fonts/winfonts/
# sudo mkfontscale
# sudo mkfontdir
# sudo fc-cache -fv #建立字型緩存資訊
3、檢視是否成功
# fc-list :lang=zh-cn #如果成功就會有如下資訊,再重新啟動tomcat就沒有亂碼了。
microsoft yahei,微軟雅黑:style=regular,normal,obyejné,standard,Κανονικ,normaali,normál,normale,standaard,normalny,Обычный,normálne,navadno,arrunta