C# 学习笔记二(图形绘制基础2 常用画图对象)
2012-10-16 12:39
465 查看
常用画图对象
在创建了Graphics对象后,就可以用它开始绘图了,可以画线、填充图形、显示文本等等,其中主要用到的对象还有:Pen:用来用patterns、colors或者bitmaps进行填充。
Color:用来画线和多边形,包括矩形、圆和饼形。
Font:用来给文字设置字体格式。
Brush:用来描述颜色。
Rectangle:矩形结构通常用来在窗体上画矩形。
Point:描述一对有序的x,y两个坐标值。
1.Pen类
Pen用来绘制指定宽度和样式的直线。使用DashStyle属性绘制几种虚线,可以使用各种填充样式(包括纯色和纹理)来填充Pen绘制的直线,填充模式取决于画笔或用作填充对象的纹理。使用画笔时,需要先实例化一个画笔对象,主要有以下几种方法。
用指定的颜色实例化一只画笔的方法如下:
public Pen(Color);
用指定的画刷实例化一只画笔的方法如下:
public Pen(Brush);
用指定的画刷和宽度实例化一只画笔的方法如下:
public Pen(Brush, float);
用指定的颜色和宽度实例化一只画笔的方法如下:
public Pen(Color, float);
实例化画笔的语句格式如下:
Pen pn=new Pen(Color.Blue);
或者Pen pn=new Pen(Color.Blue,100);
Pen常用的属性有以下几个:
Pen常用属性
名称 | 说明 |
Alignment | 获得或者设置画笔的对齐方式。 |
Brush | 获得或者设置画笔的属性。 |
Color | 获得或者设置画笔的颜色。 |
Width | 获得或者设置画笔的宽度。 |
2.Color结构
在自然界中,颜色大都由透明度(A)和三基色(R,G,B)所组成。在GDI+中,通过Color结构封装对颜色的定义,Color结构中,除了提供(A,R,G,B)以外,还提供许多系统定义的颜色,如Pink(粉颜色),另外,还提供许多静态成员,用于对颜色进行操作。颜色的基本属性
名称 | 说明 |
A | 获取此Color结构的alpha分量值,取值(0~255)。 |
B | 获取此Color结构的蓝色分量值,取值(0~255)。 |
G | 获取此Color结构的绿色分量值,取值(0~255)。 |
R | 获取此Color结构的红色分量值,取值(0~255)。 |
Name | 获取此Color结构的名称,这将返回用户定义的颜色的名称或已知颜色的名称(如果该颜色是从某个名称创建的),对于自定义的颜色,将返回RGB值。 |
名称 | 说明 |
FromArgb | 从四个8位ARGB分量(alpha、红色、绿色和蓝色)值创建Color结构。 |
FromKnowColor | 从指定的预定义颜色创建一个Color结构。 |
FromName | 从预定义颜色的指定名称创建一个Color结构。 |
Color clr1 = Color.FromArgb(122,25,255);
Color clr2 = Color.FromKnowColor(KnowColor.Brown);//KnownColor为枚举类型
Color clr3 = Color.FromName("SlateBlue");
在图像处理中一般需要获取或设置像素的颜色值,获取一幅图像的某个像素颜色值的具体步骤如下:
(1)定义Bitmap
Bitmap myBitmap = new Bitmap("c:\\MyImages\\TestImage.bmp");
(2)定义一个颜色变量把在指定位置所取得的像素值存入颜色变量中
Color c = new Color();
c = myBitmap.GetPixel(10,10);//获取此Bitmap中指定像素的颜色。
(3)将颜色值分解出单色分量值
int r,g,b;
r= c.R;
g=c.G;
b=c.B;
3.Font类
Font类定义特定文本格式,包括字体、字号和字形属性。Font类的常用构造函数是public Font(string 字体名,float 字号,FontStyle 字形),其中字号和字体为可选项和public Font(string 字体名,float 字号),其中“字体名”为Font的FontFamily的字符串表示形式。下面是定义一个Font对象的例子代码:FontFamily fontFamily = new FontFamily("Arial");
Font font = new Font(fontFamily,16,FontStyle.Regular,GraphicsUnit.Pixel);
字体常用属性。
字体的常用属性
名称 | 说明 |
Bold | 是否为粗体。 |
FontFamily | 字体成员。 |
Height | 字体高。 |
Italic | 是否为斜体。 |
Name | 字体名称。 |
Size | 字体尺寸。 |
SizeInPoints | 获取此 Font对象的字号,以磅为单位。 |
Strikeout | 是否有删除线。 |
Style | 字体类型。 |
Underline | 是否有下划线。 |
Unit | 字体尺寸单位。 |
4.Brush类
Brush类是一个抽象的基类,因此它不能被实例化,我们总是用它的派生类进行实例化一个画刷对象,当我们对图形内部进行填充操作时就会用到画刷。5.Rectangle结构
存储一组整数,共四个,表示一个矩形的位置和大小。矩形结构通常用来在窗体上画矩形,除了利用它的构造函数构造矩形对象外,还可以使用Rectangle结构的属性成员。Rectangle结构属性
名称 | 说明 |
Bottom | 底端坐标 |
Height | 矩形高 |
IsEmpty | 测试矩形宽和高是否为0 |
Left | 矩形左边坐标 |
Location | 矩形的位置 |
Right | 矩形右边坐标 |
Size | 矩形尺寸. |
Top | 矩形顶端坐标 |
Width | 矩形宽 |
X | 矩形左上角顶点X坐标 |
Y | 矩形左上角顶点Y坐标 |
//用指定的位置和大小初始化Rectangle类的新实例。
public Retangle(Point,Size);//Size结构存储一个有序整数对,通常为矩形的宽度和高度。
和
public Rectangle(int,int,int,int);
6.Point结构
用指定坐标初始化Point类的新实例。这个结构很像C++中的Point结构,它描述了一对有序的x,y两个坐标值,其构造函数为:public Point(int x,int y);其中x为该点的水平位置;y为该点的水垂直位置。下面是构造Point对象的例子代码:Point pt1=new Point(30,30);
Point pt2=new Point(110,100);
相关文章推荐
- C#学习笔记 :图形绘制基础
- C# 学习笔记一(图形绘制基础1 GDI+)
- LearnOpenGL学习笔记2:绘制基础图形
- C#学习笔记五面向对象基础
- 黑马程序员_基础_System、Runtime、Date、Calendar和Math-Random等常用对象的学习笔记
- HTML5制作坦克大战游戏+Canvas绘制基础图形——学习笔记一
- LearnOpenGL学习笔记2:绘制基础图形
- 学习笔记9:C#基础(面向对象和字符串的方法)
- .Net学习笔记----2015-07-21(C#基础复习04,面向对象语法和继承复习)
- 学习笔记:c# 从“过程”看“对象”----类及基础的实现
- C#学习笔记之使用GDI绘制简单的图形
- C#基础与常用数据结构学习笔记
- C#学习笔记(十九):图形绘制进阶-图像(双倍缓冲)
- Object-C学习笔记 基础部分(一)NSString常用方法
- Java视频学习笔记:基础(四)之对象容器
- 《面向对象基础:C++实现》学习笔记之一
- (23)Java学习笔记——常用对象API / StringBuffer类
- Cocos2d-x学习笔记(七)实例——绘制图形
- 2012-04-20 C#基础学习笔记(14)
- Object-c基础编程学习笔记-对象初始化