打开APP
userphoto
未登录

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

开通VIP
java.awt.Graphics2D抗锯齿(字体平滑)处理
userphoto

2017.03.14

关注

由于项目要在图片中动态加入文字,没想到字体有毛边,找了N多文章没找到解决方法,最后用英文关键字在google上找到了,唉,为什么大家对这些都不关心呢?
Java 2D - smooth text fonts
http://forums.sun.com/thread.jspa?threadID=739493
 

其实就是多加一个方法而已
Graphics2D g = image.createGraphics();
//让字体变平滑
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

 

 后来又找到了一个中文说明:

http://www.zeali.net/entry/494
Windows下的 ClearType 能使字体看上去更平滑,但似乎对于 java 小程序里面的文字没有作用。不过可以用 Java 2D API 提供的文本处理功能进行美化。Java 2D API 的文本功能包括:
· 使用抗锯齿处理和微调(hinting)以达到更好的输出质量
· 可以使用系统安装的所有字体
· 可以将对图形对象的操作(旋转、缩放、着色、剪切等等)应用到文本上。
· 支持向字符串添加内嵌属性(如字体、尺寸、深浅,甚至图像)
· 支持双向文本(启用从右到左的字符顺序,就象您在阿拉伯语和希伯来语中可能遇到的一样)
· 第一光标和第二光标能够浏览同时包含从右到左和从左到右字符顺序的文本。
· 先进的字体度量功能,超过旧的 java.awt.FontMetrics 类中的相应功能
· 排版功能可以实现单词换行和调整多行文本
这个 API 的核心是由 java.awt.Graphics2D 类提供的,该类是 java.awt.Graphics 的一个子类。API 的其它部分由 java.awt 层次结构中的其它包提供,包括 java.awt.color 、 java.awt.font 和 java.awt.geom 。对 Graphics2D 使用 setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); 以达到边缘平滑的效果。
 

 

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java对多媒体的支持
用三个Java类设置文本显示
java Applet 程序设计讲解2 字体,颜色的使用
用java实现打印功能
图形编程
用层来模拟ToolTip的部分功能,可以做出不规则形状
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服