如何消除画线中出现的“锯齿” 啊? 谢谢!

hellopine3 2006-02-18 11:18:50

最好能给俺点代码,着急中。。。。。。。。。。。。

再次感谢各位大侠
...全文
677 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
teli_eurydice 2006-02-20
  • 打赏
  • 举报
回复
反走样, GDI+ 可以,GDI 就不行了
hailong0108 2006-02-20
  • 打赏
  • 举报
回复
反走样技术
xianshiqi 2006-02-19
  • 打赏
  • 举报
回复 1
可以把线画的粗一些,使线的宽度占两个以上的象素
clever101 2006-02-19
  • 打赏
  • 举报
回复
画线中出现的“锯齿”主要原因是在重画客户区没有及时刷新客户区(即清屏)。这里要用到一个 Invalidate()函数。msdn中这样介绍:
void Invalidate(
BOOL bErase = TRUE
);
Parameters
bErase
Specifies whether the background within the update region is to be erased.
参数bErase实际是一个橡皮刷,默认为TRUE,即刷新时清屏。

比如你在OnLButtonDown(UINT nFlags, CPoint point)画完线,在最后添加Invalidate(),这样在重画的同时清屏,也就消除画线中出现的“锯齿”。
CW_Wei 2006-02-19
  • 打赏
  • 举报
回复
up
e_feeling 2006-02-18
  • 打赏
  • 举报
回复
gz

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧