文档章节

Linux环境下BufferedImage Graphics drawString 中文乱码解决方法

飓风2000
 飓风2000
发布于 2016/12/08 21:07
字数 307
阅读 46
收藏 0

在linux环境下的,生成的带文字的图片在前台一直显示为方框乱码,windows环境正常。

 

img.setFont(new Font("宋体", Font.BOLD, 20));

写中文进入图片之前必须设置字体,而且这个字体必须支持中文,否则就会出现乱码或者方框、问号等等。

 

BufferedImage在内存创建的图像调用的是服务器端的字体,所以在img.drawString(str, x, y);时,如果服务器端找不到对应的中文字体,那么它就识别不了,最后写入图片的中文就变成了乱码、方框、问号等等了。

在这里可以有两种方法添加服务器端的中文支持:

第一种方法,添加系统中文字体(宋体):
root@dragon-virtual-machine:~# cd /usr/share/fonts
root@dragon-virtual-machine:/usr/share/fonts# mkdir winFonts
root@dragon-virtual-machine:/usr/share/fonts# cp /home/dragon/Desktop/simsun.ttc winFonts
root@dragon-virtual-machine:/usr/share/fonts# cd winFonts
root@dragon-virtual-machine:/usr/share/fonts/winFonts# mkfontdir
root@dragon-virtual-machine:/usr/share/fonts/winFonts# mkfontscale
第二种方法,添加jre中文字体(宋体):
root@dragon-virtual-machine:~# cd /usr/lib/jvm/java-6-sun/jre/lib/fonts
root@dragon-virtual-machine:/usr/lib/jvm/java-6-sun/jre/lib/fonts# cp /home/dragon/Desktop/simsun.ttc .

修改完必须重启服务器才有效。

本文转载自:

共有 人打赏支持
飓风2000
粉丝 36
博文 310
码字总数 135394
作品 0
浦东
高级程序员
javaweb入门笔记(4)-request和response

javaweb入门笔记(4)-request和response 标签: javaweb [TOC] API: * Interface HttpServletResponse * [Interface HttpServletRequest](https://tomcat.apach...

brianway
2016/02/06
405
0
Request&&Response学习总结

1.Response 1.1 Response信息分析 1.1.1 响应行(响应的协议 响应的状态吗 响应的描述) 响应的状态码: 1XX:用户请求成功,但是服务器端没有响应 2XX:用户请求成功,且服务器端给了正确的...

我是小个子啊
2016/03/12
72
0
【转】Ubuntu Server 10.04中文环境乱码解决办法

在安装 Linux Ubuntu Server的时候选择的中文安装,结果安装好之后发现好多命令显示的结果都是乱码,如下图所示: 在网上查了一下其他人的解决办法,貌似目前还无解,传的最多的是下面的方法...

mj4738
2012/01/23
0
0
Windows 下 msysgit 中文配置

一、 概述 1. 参考文章 《git乱码解决方案汇总》 《另类方法解决Windows下git-bash中文输入的乱码问题》 2. 相关软件 Git for Windows msysgit:msysgit是Git 版本控制系统在 Windows 下的版...

千一
2013/08/09
0
3
利用iText和zxing生成和读pdf417二维码

前面的一些博文中已经提到了zxing这个开源工具生成和读取二维码图片,仅从学习的角度来看,可以告一个段落。在实际的生产环境中,应用zxing生成和读取二维码,却存在一些问题: 使用扫描枪读...

彭苏云
2014/03/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ std::function 和 std::bind

C++11提供了std::function和std::bind两个工具,用于引用可调用对象。这些可调用对象包括 普通函数,Lambda表达式,类的静态成员函数,非静态成员函数以及仿函数等。引用可调用对象,可以用于...

yepanl
22分钟前
0
0
python:可迭代对象的索引

关于 python的range的用法: 注意是[ 开始,结束)的半开区间,不包括结束 http://www.runoob.com/python/python-func-range.html import collectionsfrom collections import Iterable字符串......

Oh_really
37分钟前
1
0
docker-compose ,docker-stack

1.例子 version: "3"services: php: image: registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5 ports: - "38080:80" networks: - my_php_mysql volum......

chenbaojun
45分钟前
3
0
SQL_Server2000示例数据库NorthWind的分析(转)

SQL_Server2000示例数据库NorthWind的分析 表名:Categories(食品类别表) 表结构: 字段名称 数据类型 长度 允许为空 CategoryID(主键) int 4 否 CategoryName nvarchar 15 否 Description ...

QQZZFT
48分钟前
1
0
laravel 5.5 Session store not set on request.

laravel 5.5 数据存入session,会出现Session store not set on request.错误。查了下laravel 5.5将session放到global middleware中,需要laravel的文件 ./app/Http/Kernel.php中的加上一句:...

MichaelShu
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部