java生成pdf字體的坑


java生成pdf字體的坑

做過java生成pdf的應該都知道有很多坑,特別是字體。

這里就記錄一下字體的問題。

  1. 系統必須安裝字體,項目的resources目錄放置了要用到的中文字體,宋體和黑體。並在代碼中進行了引用。但是實際發現系統仍然需要安裝字體。

  2. 安裝字體的坑

這里主要記錄一下安裝字體的坑

網上找到的教程

cd /usr/share/fonts/
mkdir chinese
cd chinese
cp /root/simhei.ttf simhei.ttf # 字體上傳在root用戶目錄下
cp /root/simsun.ttf simsun.ttf # 字體上傳在root用戶目錄下
mkfontscale
mkfontdir
fc-cache -fv

這里確實導入了字體,但是使用發現,生成的pdf會有文字不換行,以及轉成tiff圖片后,漢字均不顯示的問題。

因為開發環境是windows,測試環境是linux(開發經常遇到環境的問題)。然后真的是windows下沒有問題,所以還是覺得代碼沒有問題,問題還是出在字體上。

繼續尋找linux字體的教程,發現有一個教程多一個步驟

chmod -R 755 /usr/share/fonts/chinese

趕緊在測試服務器上看一下文件權限

[root@shtplybremake01 share]# cd fonts
[root@shtplybremake01 fonts]# ll
total 16
drwxr-x---  2 root root   91 Nov 17 15:39 chinese
drwxr-xr-x. 2 root root 4096 Jul 20 15:51 google-droid
drwxr-xr-x. 2 root root 8192 Jul 20 15:53 urw-base35

果然chinese和其他2個目錄不一樣。接着按照教程修改權限。重新生成並驗證。

[root@shtplybremake01 fonts]# chmod -R 755 chinese/
[root@shtplybremake01 fonts]# ll
total 16
drwxr-xr-x  2 root root   91 Nov 17 15:39 chinese
drwxr-xr-x. 2 root root 4096 Jul 20 15:51 google-droid
drwxr-xr-x. 2 root root 8192 Jul 20 15:53 urw-base35


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM