一个C#函数学完C#图形图像编程基础

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ytlxl/article/details/79920042

老师说C#主要用于

1、winform开发

2、网络

3、驱动

在图形图像处理上用的比较少,不过书里有图形图像编程这一章节,为了系统的学完C#编程基础,以及为了能够更熟悉C#的特性,再加上今天晚上闲的没事,就把这一章再看了一遍。将今天晚上的知识整理了一下,通过一个函数将图形图像的知识串了起来。

一、GDI+的介绍

GDI+是C#中用于绘图操作的一个接口,GDI+是GDI的后续版本,GDI+包含了大约60个类,50个枚举,8个结构,其中图形类Graphics是核心类。

Graphics:

要进行图像处理,必须由Graphics类创建Graphics对象,然后才能开始绘图。

二、函数

private void Form1_Paint(object sender, PaintEventArgs e)
{
    Graphics g = e.Graphics;
    //HatchBrush brush = new HatchBrush(HatchStyle.Percent90, Color.White, Color.Red);
    //g.FillEllipse(brush, new Rectangle(10, 10, 300, 100));
    Pen p = new Pen(Color.Black);
    g.DrawRectangle(p,new Rectangle(10,10,110,60));
    g.TranslateTransform(50,50);
    g.DrawRectangle(p, new Rectangle(10, 10, 110, 60));
    g.Dispose();
}

函数功能:

该函数是在窗体进行绘制的时候执行的,这个函数在窗体上以坐标值为(10,10)的点作为左上角,画了一个宽度为110,长度为60的矩形。之后再将矩形向右下(我们直观上的)平移。注释的部分是画了一个椭圆并填充。

三、包含的知识

1、坐标系

在GDI+中,坐标系的原点在左上角,向右的方向为x轴的正方向,向下的方向为y轴的正方向。所以在函数里 g.TranslateTransform(50,50);是向右下平移

2、pen对象

pen对象用于绘制线条,pen对象的建立有两种方法:

a、用pen类创建

Pen p=new Pen(Color.Black);

b、用Brush对象创建笔

SolidBrush brush=new SolidBrush(Color.Blue);

Pen p=new Pen(Brush,5);

3、画矩形

g.DrawRectangle(p,new Rectangle(10,10,110,60));

g是一个Graphics对象,p是一个Pen对象,new Rectangle(10,10,110,60)初始化了System.Drawing.Rectangle 类的一个实例。Rectangle有三个重载,分别是:


4、全局变换

Graphics类提供了三种方法对图像进行全局变换,分别是:

a、TranslateTransform()平移

b、RotateTransform()旋转

c、ScaleTransform()缩放

5、画椭圆

g.FillEllipse(brush, new Rectangle(10, 10, 300, 100));

GDI+绘制的椭圆是将椭圆放在new Rectangle(10,10,300,100)的矩形中然后绘制出来。此处为画一个椭圆并且将椭圆进行了填充,如果仅仅绘制一个椭圆,则是如下代码:

g.DrawEllipse(p, new Rectangle(10, 10, 300, 100));

猜你喜欢

转载自blog.csdn.net/ytlxl/article/details/79920042
今日推荐