前言

项目中用到一个利用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);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5OpBWFOC-1587535188664)(https://raw.githubusercontent.com/HealerJean123/HealerJean123.github.io/master/blogImages/WX20180717-152204@2x.png)]

博主用的是mac本开发,使用mac开发的同学们应该知道,mac和linux很多地方是一样的,包括文字

1、打开mac文字存放目录,将下面的字体找到,复制出来

博主使用的字体是 PingFang.ttc

/System/Library/FontsJeandeMBP: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.dfontJeandeMBP: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开发的朋友。注意去网络上找找相关字体吧。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ikDz9GXm-1587535188666)(https://raw.githubusercontent.com/HealerJean123/HealerJean123.github.io/master/blogImages/WX20180717-152743@2x.png)]

Linux生成图片文字乱码相关推荐

  1. linux ls 中文乱码_每天一个linux命令:Linux文件类型与扩展名

    Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文 ...

  2. linux与linux传文件乱码,关于Linux与windows传递文件乱码问题

    linux下一般是采用utf-8的编码,而我们在windows上编辑文件时是gb2312的编码.所以导致中文编码会乱码.要更正这个问题实际上很简单只要把文件转换成utf-8编码格式然后再导入就ok啦. ...

  3. 举个栗子~Tableau 技巧(216):服务器视图中的文字乱码怎么办?

    的确,很多 Tableau Server 用户都会遇到相同的问题:创建好的看板发布到服务器之后,因为服务器缺少看板使用的字体,发布后的服务器视图中的文字会出现乱码(如下图). 其实,安装字体跟 Tab ...

  4. JFreeChart 生成图表 在linux服务器中文乱码问题

    JFreeChart 生成图表 在linux服务器中文乱码问题 java中用JfreeChart可以生成图表,而不借助于flash,js,canvas等技术: 图表中的文字生成依赖于系统本地字体,但在 ...

  5. Kali Linux 2020.1乱码问题

    Kali Linux 2020.1乱码问题 Kali Linux 2020.1安装后,默认XFCE桌面字体显示为乱码.由于缺少中文字体包,所以需要安装中文字体.在终端执行如下命令: apt-get i ...

  6. 解决Kali Linux 2020.1乱码问题

    解决Kali Linux 2020.1乱码问题 Kali Linux 2020.1安装后,默认XFCE桌面字体显示为乱码.这是由于缺少中文字体包,所以需要安装中文字体.在终端执行如下命令: apt-g ...

  7. linux某些汉字乱码,Linux汉字乱码解决办法

    以下以fopen.fread和printf为参考,文件中包含汉字和字母(注意) 汉字   | Windows | Linux ----------------------- 1)ANSI   |  正 ...

  8. telnet工具_Telnet进入Linux时出现乱码

    Linux操作系统的性能发辉得比较好的,但是当Telnet进入Linux时出现乱码,这是什么一回事呢? 那么我们现在就带着这个问题一起去看看Telnet进入Linux时出现乱码的解决方法吧. 时而需要 ...

  9. 教你解决ChartDirector Linux下中文乱码

    用ChartDirector这个c++库画图的时候会遇到乱码的问题. 在同事的指导下,将所有的中文先转换成utf8编码. 然后用simsun.ttc这个字体显示. 就ok了. 今天又遇到了这个问题,还 ...

最新文章

  1. python读取大文件内容_python 读取大文件
  2. 有关web接受管理邮件
  3. php 各种进制表示,php各种进制的转换
  4. 转:Chrome渲染分析之Timeline工具的使用
  5. ECCV 2020最佳论文讲了什么?作者为ImageNet一作、李飞飞高徒
  6. 《算法导论》第二章 入门
  7. 真正的研发之路(1)
  8. 【Android UI设计与开发】第04期:引导界面(四)仿人人网V5.9.2最新版引导界面...
  9. rectangle函数与Rect函数的用法
  10. Native开发工具之静态库和动态库(二,小码农也有大梦想
  11. 我国的居民身份证号码,由由十七位数字本体码和一位数字校验码组成。请定义方法判断用户输入的身份证号码是否合法,并在主方法中调用方法测试结果。规则为:号码为18位,不能以数字0开头,前17位只可以是数字,
  12. 亚瑟王的「随机」挑战:从交互到非交互式零知识证明——探索零知识证明系列(四)
  13. java 学习7.13 正则表达式 Pattern和Matcher类 Math类 Random类 System类 BigDecimal类 Date类 SimpleDateFormat类 Cale
  14. jQuery weui Select组件显示指定值
  15. 编程基础(三十七):PTA运行时错误
  16. android 开启子线程方法,android中开启子线程
  17. JavaScript选项卡/页签/Tab的实现
  18. CSS中 px、em、rem区别
  19. 论坛数据库设计与性能优化
  20. Windows Server域控制器更改IP步骤

热门文章

  1. (高精度GPS北斗RTK手持机)
  2. 为什么即使企业家不做科学,也要知道科学是什么样子的?
  3. 04.声明式服务调用:Spring Cloud Feign(Greenwich.SR2)
  4. Dell商用台式机、笔记本、服务器800电话
  5. java escpos_如何在Linux中将ESC / POS命令发送到热敏打印机
  6. 解决java.lang.UnsatisfiedLinkError
  7. 没有内容的文集,竟然是不存在的
  8. 再说for in循环
  9. 传奇人物穿戴物品位置编号
  10. python求阶乘怎么做_python如何求阶乘