java Graphics2D 使线条更平滑


因为项目需要,需要用到Graphics2D绘制线条图形

但是没有做处理之前,绘制出来的线条有严重的锯齿,看起来非常难看,如图:

java Graphics2D 使线条更平滑_第1张图片

使线条平滑的代码如下:


g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_DEFAULT);

再次执行代码,如图:
线条看起来确实平滑了很多,也消除了锯齿,但是还不够!左边的某些线条看起来还是很丑

这时需要设置画笔代码如下:

Stroke s = new BasicStroke(wide, BasicStroke.CAP_ROUND, BasicStroke.JOIN_MITER);
g2.setStroke(s);

再执行代码,如图:

java Graphics2D 使线条更平滑_第2张图片

这下就好了,线条看起来舒服很多,如果大家还有别的更好的办法,还望指点!

最后给大家推荐一篇好文

http://blog.csdn.net/zhliro/article/details/45645569


你可能感兴趣的:(java)