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);
博主用的是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开发的朋友。注意去网络上找找相关字体吧。
如果满意,请打赏博主任意金额,感兴趣的在微信转账的时候,添加博主微信哦, 请下方留言吧。可与博主自由讨论哦
支付包 | 微信 | 微信公众号 |
---|---|---|