java使用Graphics 生成二維碼等圖片中文亂碼

中文亂碼,畫筆的字體選擇是字體雅黑 這個亂碼的原因就是以為linux沒有對應的字體

        Graphics g = image.createGraphics();
        // 設置 Graphics 的繪制顏色
        g.setColor(color);
         // 設置字體
        g.setFont(new Font("微軟雅黑", Font.PLAIN, fontSize));
        // 開始繪制
        g.drawString(pressText, startX, startY);

fc-list 查看已安裝的字體
fc-list :lang=zh 查看已安裝的中文字體

1、無外網(wǎng)到百度網(wǎng) 下載微軟雅黑字體
https://pan.baidu.com/s/1LFlNhDEmgwASlyzzQQNScQ 4ger
有外網(wǎng)的情況 在centos上,使用如下命令進行安裝:
yum install -y fontconfig mkfontscale
有外網(wǎng)的情況 在ubuntu上,使用如下命令進行安裝:
sudo apt-get -y install fontconfig xfonts-utils

2、cp 字體.ttf /usr/share/fonts/ 把字體復制到這個目錄下

3、然后建立字體索引信息,更新字體緩存,使用如下命令:
cd /usr/share/fonts/
mkfontscale 可能失敗無所謂
mkfontdir 可能失敗無所謂
fc-cache
再次查看字體已安裝的字體 fc-list :lang=zh

4、重啟java服務 或者其他服務

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容