java之服务器端写图片中文乱码

需求:

往图片上写中文的时候出现中文乱码,核心代码如下:

BufferedImage image=...
Graphics g = image.createGraphics();
g.drawImage(image, 0, 0, wideth, height, null);
g.setColor(Color.BLACK);
g.setFont(new Font("宋体", Font.BOLD, 20));
g.drawString(content, 5, height - offset);
g.dispose();
image.flush();

问题原因:

服务器端不支持宋体

解决方式:

1.下载fireflysung.ttf ,没有找到的可以参考附件

2.在jre的fonts中创建fallback

写道
cd $JAVA_HOME/jre/lib/fonts/
mkdir fallback

3.上传fireflysung.ttf到fallback中去

4.fallback中创建两个目录:

mkdir  fontdir  fontscale

5.重启相应的应用比如tomcat即可

猜你喜欢

转载自snv.iteye.com/blog/2293302