GDI绘制平滑曲线处理问题

远志999 2009-01-09 03:58:23
你好,请问用GDI绘制出曲线
path.AddCurve( CollectPoints, npoints);
graphics.DrawPath(&Pen, &path); //绘制平滑曲线

画出来的曲线有锯齿,如何处理,使其尽量平滑?谢谢
...全文
779 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuka 2009-01-12
  • 打赏
  • 举报
回复
graphics.SetSmoothingMode(SmoothingModeHighQuality);
CodeProject-Jerry 2009-01-11
  • 打赏
  • 举报
回复

enum SmoothingMode
{
SmoothingModeInvalid = QualityModeInvalid,
SmoothingModeDefault = QualityModeDefault,
SmoothingModeHighSpeed = QualityModeLow,
SmoothingModeHighQuality = QualityModeHigh,
SmoothingModeNone,
SmoothingModeAntiAlias,
#if (GDIPVER >= 0x0110)
SmoothingModeAntiAlias8x4 = SmoothingModeAntiAlias,
SmoothingModeAntiAlias8x8
#endif //(GDIPVER >= 0x0110)
};
roadblossom 2009-01-10
  • 打赏
  • 举报
回复
up
Tinary3v0 2009-01-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 IT_Fly 的回复:]
graphics.SetSmoothingMode(SmoothingModeHighQuality);
[/Quote]
没错 设定这个后就可以消除锯齿了 在画线之前调用就可以了。
梧桐168 2009-01-09
  • 打赏
  • 举报
回复
graphics.SetSmoothingMode(SmoothingModeHighQuality);
梧桐168 2009-01-09
  • 打赏
  • 举报
回复
设置GDI+属性,让其反走样处理
dch4890164 2009-01-09
  • 打赏
  • 举报
回复
你这不是gdi+嘛!
是不是你离散的点太少了
用二次曲线拟合试一下,不过要你自己实现离散的点,调用方式和你这个是一样的
fandh 2009-01-09
  • 打赏
  • 举报
回复
这些必须自己将曲线平滑化,要离散出更多的点才行,微软不管的!

19,468

社区成员

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

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