刘力
论坛版主
论坛版主
  • UID324
  • 粉丝3
  • 关注2
  • 发帖数19
阅读:7910回复:0

关于画斜线时线段不平整的解决方案

楼主#
更多 发布于:2017-12-04 15:27
在画斜线时,当线段稍微长一些,画出来的斜线很容易出现不平整的现象且锯齿明显。如果想消除这种情况,可以将斜线拆分成许多比较短的斜线的线段来画,最终画出的斜线会很平整且锯齿不明显。
代码:

Rectangle r = getBounds();
graphics.drawLine(new Point(r.x, r.y), new Point(r.x + r.width / 2, r.y + r.height)); //初始方法
for (int i = 50; i <= r.height; i++) { //改善方案
 graphics.drawLine(new Point(r.x + i - 50, r.y + i - 50), new Point(r.x + i, r.y + i));
}
感兴趣的话可以试一试。上面的i具体取多少可以更具实际情况来计算。
下图中左边的为初始方法画出的斜线,可以看出,锯齿比较明显;右边的为此方法画出的斜线,比较平整且锯齿不明显。
游客

返回顶部