概述
一、要绘画就要有画布,如果我们是在PictureBox上画画的话,可以这样声明画布
Graphics g = Graphics.FromImage(this.pictureBox1.Image);
如果是在panel中绘画的话,可以这样写
Graphic g = this.panel1.CreateGraphics();
有了画布,一切就可以开始了,通过调用这个Graphics对象的各种方法,可以画出所有的图形。
二、如果我们要画一些直线或斜线的话,这些线不光滑可就不好看了,下面的语句可以达到我们的要求
g.SmoothingMode = SmoothingMode.AntiAlias;
三、画菱形
要先定义好菱形的4个点的坐标,通常顺时针依次写好就行了。然后就可以画了
- Point[] p = new Point[4];
- p[0] = new Point(820, 380);
- p[1] = new Point(835, 370);
- p[2] = new Point(850, 380);
- p[3] = new Point(835, 390);
- g.DrawPolygon(pen, p);
四、填充
(1) 可以在指定的起点和范围内填充指定的颜色
g.FillRectangle(Brushes.Black, 100, 100, 50, 100);
这句代码在坐标(100,100)处填充横向50,纵向100的黑色块
(2) 填充指定多边形
比如填充菱形
先定义菱形的坐标,然后就可以填充了
- Point[] p = new Point[4];
- p[0] = new Point(820, 380);
- p[1] = new Point(835, 370);
- p[2] = new Point(850, 380);
- p[3] = new Point(835, 390);
- GraphicsPath gp = new GraphicsPath();
- gp.AddLines(p1);
- Brush b = new SolidBrush(color);
- g.FillPath(b, gp);
五、画箭头
- /// <summary>
- /// 在制定位置画箭头
- /// </summary>
- /// <param name="newG">绘图图面</param>
- /// <param name="p">画笔</param>
- /// <param name="basePoint">基准点</param>
- /// <param name="w">底线长度的一半</param>
- /// <param name="h">箭头的高度</param>
- /// <param name="direction">方向:1,表示x;2表示y</param>
- private static void DrawArrow(Graphics g, Pen p, Point basePoint, int w, int h, int direction)
- {
- Point[] pt;
- if (direction == 1)
- {
- pt = new Point[3] { new Point(basePoint.X, basePoint.Y - 6), new Point(basePoint.X - 2, basePoint.Y), new Point(basePoint.X + 2, basePoint.Y) };
- }
- else
- {
- pt = new Point[3] { new Point(basePoint.X + h, basePoint.Y), new Point(basePoint.X, basePoint.Y - w), new Point(basePoint.X, basePoint.Y + w) };
- }
- g.DrawPolygon(Pens.Blue, pt);
- }
最后
以上就是细腻毛衣为你收集整理的c#简单绘画操作的全部内容,希望文章能够帮你解决c#简单绘画操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复