此系列的文章,是公司的学习资料中找到,不知道是哪位仁兄总结,作为入门教程,拿出来分享。实例都比较简单,不多说,直接贴代码,并会适当加些注释:
private void btn_Draw_Click(object sender, EventArgs e) { Graphics g = this.CreateGraphics(); g.SmoothingMode = SmoothingMode.AntiAlias; g.FillRectangle(Brushes.Wheat, this.ClientRectangle); Pen p = new Pen(Color.Red, 10); p.LineJoin = LineJoin.Bevel; g.DrawRectangle(p, 20, 20, 100, 100); Pen p1 = new Pen(Color.Red, 10); p1.LineJoin = LineJoin.Miter; g.DrawRectangle(p1, 20, 120, 200, 200); Pen p2 = new Pen(Color.Red, 10); p2.LineJoin = LineJoin.MiterClipped; g.DrawRectangle(p2, 20, 210, 100, 320); Pen p3 = new Pen(Color.Red, 10); p3.LineJoin = LineJoin.Round; g.DrawRectangle(p3, 120, 20, 120, 100); p.Dispose(); g.Dispose(); } 运行结果:

说明:
1. g.SmoothingMode = SmoothingMode.AntiAlias;
SmoothingMode指定是否将平滑处理(消除锯齿)应用于直线、曲线和已填充区域的边缘。
Invalid 指定一个无效模式。
Default 指定不消除锯齿。
HighSpeed 指定高速度、低质量呈现。
HighQuality 指定高质量、低速度呈现。
None 指定不消除锯齿。
AntiAlias 指定消除锯齿的呈现。
2. LineJoin设置两条连续线段的连接样式
Miter 指定斜联接。这将产生一个锐角或切除角,具体取决于斜联接的长度是否超过斜联接限制。
Bevel 指定成斜角的联接。这将产生一个斜角。
Round 指定圆形联接。这将在两条线之间产生平滑的圆弧。
MiterClipped 指定斜联接。这将产生一个锐角或斜角,具体取决于斜联接的长度是否超过斜联接限制。
点评:
此事例较为简单,就是使用画笔、坐标,通过graphics画出几个矩形而已。在这里注意画笔(Pen)概念的引入,然后就是LineJoin和SmoothingMode两个枚举类型。
本文介绍了使用Graphics类进行绘图的基本方法,重点讲解了如何通过调整Pen对象的LineJoin和SmoothingMode属性来改善线条的视觉效果。通过具体的代码示例展示了不同设置下矩形边框的表现差异。
686

被折叠的 条评论
为什么被折叠?



