1. 程式人生 > >Linux生成圖片文字亂碼

Linux生成圖片文字亂碼

前言

專案中用到一個利用java生成圖片的功能,但是在上傳到linxu伺服器的時候出現了亂碼,這個是由於我們的linux的伺服器的字型不存在導致的,在我們自己的電腦(作業系統上),系統為我們提供了很多的字型,可以讓我們直接使用,但是linux是不可以直接使用的,需讓將字型匯入進去。

java中字型設定為了  PingFang SC

//商品推薦
Graphics2D fixTuiJian = bufferedImage.createGraphics();
fixTuiJian.setColor(new Color(77,77,77));
Font fixTuiJianFont = new Font("PingFang SC"
, Font.PLAIN, 13*30); fixTuiJian.setFont(fixTuiJianFont); //失真處理 fixTuiJian.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); fixTuiJian.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_GASP);

WX20180717-152204@2x

博主用的是mac本開發,使用mac開發的同學們應該知道,mac和linux很多地方是一樣的,包括文字

1、開啟mac文字存放目錄,將下面的字型找到,複製出來

博主使用的字型是 PingFang.ttc

/System/Library/Fonts

JeandeMBP:Fonts healerjean$ cd /System/Library/Fonts
JeandeMBP:Fonts healerjean$ 
JeandeMBP:Fonts healerjean$ ls -l
total 803992
-rw-r--r--  1 root  wheel    263912  3 23  2017 Apple Braille Outline 6 Dot.ttf
-rw-r--r--  1 root  wheel    280980
3 23 2017 Apple Braille Outline 8 Dot.ttf -rw-r--r-- 1 root wheel 183080 3 23 2017 Apple Braille Pinpoint 6 Dot.ttf -rw-r--r-- 1 root wheel 189668 3 23 2017 Apple Braille Pinpoint 8 Dot.ttf -rw-r--r-- 1 root wheel 135960 3 23 2017 Apple Braille.ttf -rw-r--r-- 1 root wheel 99827880 3 23 2017 Apple Color Emoji.ttc -rw-r--r-- 1 root wheel 973516 3 23 2017 Apple Symbols.ttf -rw-r--r-- 1 root wheel 28386056 8 12 2015 AppleSDGothicNeo.ttc -rw-r--r-- 1 root wheel 18487164 11 8 2014 AquaKana.ttc -rw-r--r-- 1 root wheel 192088 7 31 2016 ArialHB.ttc -rw-r--r-- 1 root wheel 3325568 3 23 2017 Avenir Next Condensed.ttc -rw-r--r-- 1 root wheel 5045468 3 23 2017 Avenir Next.ttc -rw-r--r-- 1 root wheel 1593228 3 23 2017 Avenir.ttc -rw-r--r-- 1 root wheel 1646421 3 23 2017 Courier.dfont JeandeMBP:Fonts healerjean$ ls -l | grep PingFang.ttc -rw-r--r-- 1 root wheel 80376964 8 1 2016 PingFang.ttc JeandeMBP:Fonts healerjean$

2、java環境中新增字型

java環境字型目錄

/usr/local/java/jre/lib/fonts/

root@beiyong:/etc/nginx# cd /usr/local/java/jre/lib/fonts/
root@beiyong:/usr/local/java/jre/lib/fonts# ll -l
total 80548
drwxr-xr-x  2 uucp  143     4096 Jul 17 11:40 ./
drwxr-xr-x 15 uucp  143     4096 Mar 29 12:55 ../
-rw-r--r--  1 uucp  143     4041 Mar 29 12:52 fonts.dir
-rw-r--r--  1 uucp  143    75144 Mar 29 12:52 LucidaBrightDemiBold.ttf
-rw-r--r--  1 uucp  143    75124 Mar 29 12:52 LucidaBrightDemiItalic.ttf
-rw-r--r--  1 uucp  143    80856 Mar 29 12:52 LucidaBrightItalic.ttf
-rw-r--r--  1 uucp  143   344908 Mar 29 12:52 LucidaBrightRegular.ttf
-rw-r--r--  1 uucp  143   317896 Mar 29 12:52 LucidaSansDemiBold.ttf
-rw-r--r--  1 uucp  143   698236 Mar 29 12:52 LucidaSansRegular.ttf
-rw-r--r--  1 uucp  143   234068 Mar 29 12:52 LucidaTypewriterBold.ttf
-rw-r--r--  1 uucp  143   242700 Mar 29 12:52 LucidaTypewriterRegular.ttf
-rw-r--r--  1 root root 80376964 Jul 17 11:41 PingFang.ttc
root@beiyong:/usr/local/java/jre/lib/fonts# 

3、將mac中的放進去,然後重啟web伺服器既可使用,注意觀察上面的字型字尾名都是ttf才能夠通用,所以如果是windows開發的朋友。注意去網路上找找相關字型吧。

WX20180717-152743@2x





如果滿意,請打賞博主任意金額,感興趣的在微信轉賬的時候,新增博主微信哦, 請下方留言吧。可與博主自由討論哦

支付包 微信 微信公眾號
支付寶 微信 微信公眾號