打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JAVA 绘图 Linux下中文乱码、centos 安装中文字体

CentOs服务器下,Java 使用Graphics2D向图片中合成文字,显示小方框。

 //背景图 File bgImageFile = new File(bgImageName);  BufferedImage big = ImageIO.read(bgImageFile);  //合成的图片   Graphics2D graphics = big.createGraphics();   // 设置字体为黑色   graphics.setPaint(Color.BLACK);   // 画笔粗细   graphics.setStroke(new BasicStroke(1f));   // 消除文字锯齿   graphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);   // 消除图片锯齿   graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);   //创建字体    Font font = new Font("宋体", Font.PLAIN, 38);    //设置字体    graphics.setFont(font);    // 表示这段文字在图片上的位置(x,y) .第一个是你设置的内容。    graphics.drawString(userName, widthX / 2, 820);

效果图:

显示方框是没有字体库,不是编码问题,显示???是编码问题,那么就是 centos 缺少了字体库,安装一下

第一步 安装字体库

yum install fontconfig
已加载插件:fastestmirror...Running transaction 正在安装 : libfontenc-1.1.3-3.el7.x86_64 1/2 正在安装 : 1:xorg-x11-font-utils-7.5-21.el7.x86_64 2/2 验证中 : libfontenc-1.1.3-3.el7.x86_64 1/2 验证中 : 1:xorg-x11-font-utils-7.5-21.el7.x86_64 2/2
已安装: xorg-x11-font-utils.x86_64 1:7.5-21.el7
作为依赖被安装: libfontenc.x86_64 0:1.1.3-3.el7
完毕!

第二步 安装更新字体命令

yum install mkfontscale

[root@service-1 ~]# yum install mkfontscale已加载插件:fastestmirrorLoading mirror speeds from cached hostfile正在解决依赖关系--> 正在检查事务---> 软件包 xorg-x11-font-utils.x86_64.1.7.5-21.el7 将被 安装--> 正在处理依赖关系 libfontenc.so.1()(64bit),它被软件包 1:xorg-x11-font-utils-7.5-21.el7.x86_64 需要--> 正在检查事务---> 软件包 libfontenc.x86_64.0.1.1.3-3.el7 将被 安装--> 解决依赖关系完成
依赖关系解决
======================================================================================================================================================== Package 架构 版本 源 大小========================================================================================================================================================正在安装: xorg-x11-font-utils x86_64 1:7.5-21.el7 base 104 k为依赖而安装: libfontenc x86_64 1.1.3-3.el7 base 31 k
事务概要========================================================================================================================================================安装 1 软件包 (+1 依赖软件包)
总下载量:135 k安装大小:408 kIs this ok [y/d/N]: yDownloading packages:(1/2): xorg-x11-font-utils-7.5-21.el7.x86_64.rpm | 104 kB 00:00:00 (2/2): libfontenc-1.1.3-3.el7.x86_64.rpm | 31 kB 00:00:00 --------------------------------------------------------------------------------------------------------------------------------------------------------总计 1.5 MB/s | 135 kB 00:00:00 Running transaction checkRunning transaction testTransaction test succeededRunning transaction 正在安装 : libfontenc-1.1.3-3.el7.x86_64 1/2 正在安装 : 1:xorg-x11-font-utils-7.5-21.el7.x86_64 2/2 验证中 : libfontenc-1.1.3-3.el7.x86_64 1/2 验证中 : 1:xorg-x11-font-utils-7.5-21.el7.x86_64 2/2
已安装: xorg-x11-font-utils.x86_64 1:7.5-21.el7
作为依赖被安装: libfontenc.x86_64 0:1.1.3-3.el7
完毕!

第三步 查看中文字体

fc-list :lang=zh
  • 1

发现是没有的,所以需要上传中文字体库
创建文字体库的目录并设置这个目录的访问权限

mkdir /usr/share/fonts/chinesecd /usr/share/fonts/chinesechmod -R 755 /usr/share/fonts/chinese

然后使用 ftp上传字体库 (回复作者获取中文字体库)

第四步 关联使用上传的字体库

cd /usr/share/fonts/chinesemkfontscalemkfontdirfc-cache

再次查看是否安装成功

[root@service-1 chinese]# fc-list :lang=zh/usr/share/fonts/chinese/SIMSUN.TTC: 宋体,SimSun:style=常规,Regular/usr/share/fonts/chinese/DENGL.TTF: DengXian,DengXian Light:style=Light,Regular/usr/share/fonts/chinese/DENG.TTF: DengXian:style=Regular/usr/share/fonts/chinese/DENGB.TTF: DengXian:style=Bold/usr/share/fonts/chinese/SIMSUN.TTC: 新宋体,NSimSun:style=常规,Regular/usr/share/fonts/chinese/SIMKAI.TTF: KaiTi:style=Regular,Normaali/usr/share/fonts/chinese/SIMHEI.TTF: SimHei:style=Normal/usr/share/fonts/chinese/SIMFANG.TTF: FangSong:style=Regular,Normaali
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
CentOS6.5下安装字体
Linux中使用selenium截图的文字变为方框的解决方案
Linux 中文乱码解决!
Linux redhat中文字体安装
在debian中安装中文字体
Linux操作系统安装字体笔记
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服