菜鸟的博客

记录工作点滴

C# 图形的绘制矩形椭圆
1.矩形框的绘制


绘制矩形框是用GDI+技术的DrawRectangle方法来实现的,它有3种语法,其语法格式如下:


public void DrawRectangle (Pen pen, int x, int y, int width, int height)


public void DrawRectangle (Pen pen, float x, float y, float width, float height)


public void DrawRectangle (Pen pen, Rectandgle rect)


DrawRectangle方法的参数说明如表1所示。


表1  DrawRectangle方法的参数说明


参数
 说    明
 
Pen
 确定矩形的颜色、宽度和样式
 
x
 要绘制的矩形的左上角的x坐标
 
y
 要绘制的矩形的左上角的y坐标
 
width
 要绘制的矩形的宽度
 
height
 要绘制的矩形的高度
 
rect
 要绘制的矩形的Rectandgle结构
 
例如,用整型值绘制矩形框,代码如下:


Pen mypen =new Pen(Color.Black, 1);//设置画笔的颜色及宽度


int x=30; int y=30; int width=10; int height=20;


g.DrawRectangle(mypen, x, y, width, height);                    //绘制矩形


例如,用单精度型绘制矩形框,代码如下:


Pen mypen =new Pen(Color.Black, 1); //设置画笔的颜色及宽度


float x = Convert.ToSingle(30.7); float y = Convert.ToSingle(30.1); float width = Convert.ToSingle(10.2);


float height = Convert.ToSingle(20.0);


g.DrawRectangle(mypen, x, y, width, height);                    //绘制矩形


例如,用Rectandgle结构绘制矩形框,代码如下:


Pen mypen =new Pen(Color.Black, 1); //设置画笔的颜色及宽度


Rectangle rect = new Rectangle(0, 0, 200, 200);


g.DrawRectangle(mypen, rect);                           //绘制矩形


2.矩形框的填充


矩形框的填充是用GDI+技术的Fillrectangle方法来实现的,它有3种语法,其语法格式如下:


public void Fillrectangle (Brush brush, int x, int y, int width, int height)


public void Fillrectangle (Brush brush, float x, float y, float width, float height)


public void Fillrectangle (Brush brush, Rectandgle rect)


Fillrectangle方法的参数说明如2所示。


表2  Fillrectangle方法的参数说明


参数
 说    明
 
Brush
 确定填充特性的Brush(画刷)
 
X
 要绘制的矩形的左上角的x坐标
 
Y
 要绘制的矩形的左上角的y坐标
 
Width
 要绘制的矩形的宽度
 
Height
 要绘制的矩形的高度
 
Rect
 要绘制的矩形的Rectandgle结构
 


例如,在指定的位置填充一个矩形,代码如下:


Graphics g = e.Graphics;


int x=30; int y=30; int width=10; int height=20;


SolidBrush mybrush = new SolidBrush(Color.Red);


g.FillRectangle(mybrush, x, y, width, height);                     //填充矩形


3.填充椭圆形的绘制


绘制填充椭圆形是用GDI+技术的FillPie方法来实现的,它有3种语法,其语法格式如下:


public void FillPie(Brush brush, Rectangle rect, float startAngle, float sweepAngle)


public void FillPie(Brush brush, int x, int y, int width, int height, int startAngle, int sweepAngle)


public void FillPie(Brush brush, float x, float y, float width, float height, float startAngle, float sweepAngle)


FillPie方法的参数说明如表3所示。


表3  FillPie方法的参数说明


参数
 说    明
 
Brush
 确定填充特性的Brush(画刷)
 
X
 要绘制的矩形的左上角的x坐标
 
Y
 要绘制的矩形的左上角的y坐标
 
Width
 要绘制的矩形的宽度
 
Height
 要绘制的矩形的高度
 
StartAngle
 从x轴沿顺时针方向旋转到扇形区第一个边所测得的角度(以度为单位)
 
SweepAngle
 从startAngle参数沿顺时针方向旋转到扇形区第二个边所测得的角度(以度为单位)
 


例如,在指定的位置绘制一个填充的椭圆形,代码如下:


Graphics g = e.Graphics;


SolidBrush redBrush = new SolidBrush(Color.Red);


int x = 300;


int y = 0;


int width = 200;


int height = 100;


int startAngle = 0;


int sweepAngle = 360;


e.Graphics.FillPie(redBrush, x, y, width, height, startAngle, sweepAngle);


例如,在指定的位置绘制一个填充的45度角的扇形,代码如下:


Graphics g = e.Graphics;


SolidBrush redBrush = new SolidBrush(Color.Red);


Rectangle rect = new Rectangle(0, 0, 200, 100);


float startAngle = 0.0F;//椭圆形的起始点


float sweepAngle = 45.0F;//扇形的度数


e.Graphics.FillPie(redBrush, rect, startAngle, sweepAngle);


4.绘制字符串


绘制字符串是用GDI+技术的DrawString方法来实现的,它有4种语法,其语法格式如下:


public void DrawString(string s, Font font, Brush brush, PointF point)


public void DrawString(string s, Font font, Brush brush, RectangleF layoutRectangle)


public void DrawString(string s, Font font, Brush brush, PointF point, StringFormat format)


public void DrawString(string s, Font font, Brush brush, RectangleF layoutRectangle, StringFormat format)


DrawString方法的参数说明如表4所示。


表4  DrawString方法的参数说明


参数
 说    明
 
s
 要绘制的字符串
 
font
 Font,它定义字符串的文本格式
 
brush
 Brush,它确定所绘制文本的颜色和纹理
 
Point
 PointF结构,它指定所绘制文本的左上角
 
layoutRectangle
 RectangleF结构,它指定所绘制文本的位置
 
format
 StringFormat,它指定应用于所绘制文本的格式化属性(如行距和对齐方式)
 


例如,在指定的位置纵向绘制字符串,代码如下:


String drawString = "我正在垂直对齐";


Font drawFont = new Font("宋体", 16);


SolidBrush drawBrush = new SolidBrush(Color.Black);


PointF drawPoint = new PointF(150.0F, 50.0F);


StringFormat drawFormat = new StringFormat();


drawFormat.FormatFlags = StringFormatFlags.DirectionVertical;                    //文本垂直对齐


e.Graphics.DrawString(drawString, drawFont, drawBrush, drawPoint, drawFormat);

阅读更多
个人分类: C#
想对作者说点什么? 我来说一句

C#编程实现画椭圆

2014年05月18日 55KB 下载

C#中在picturebox中实时画矩形

2014年07月03日 3KB 下载

没有更多推荐了,返回首页

不良信息举报

C# 图形的绘制矩形椭圆

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭