C# 图形的绘制矩形椭圆

转载 2016年05月31日 14:15:16
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# winfrom 在panel上绘制矩形

Bitmap b = new Bitmap(panel1.Width, panel1.Height); Graphics g = Graphics.FromImage(b); ...

C#如何实现画矩形图,饼状图

      在用C#做报表类的网站的时候,很多时候需要一些图形来直观的表达数据所蕴含的信息,这些图形包括曲线图,矩形图,饼状图,  最近作了个项目,内容涉及到画CPK曲线,画某个时间段各个工站的产能图...

C#之WinForm基础 画一个矩形与扇形

镇场诗:慈心积善融学习,技术誓为大家学。善心速造多好事,前人栽树后乘凉。我今于此写经验,愿见文者得启发。 ——————————————————————————————————————————————...

c#鼠标拖动画矩形

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...

【OpenGL】中点圆、椭圆生成算法

OpenGL 中点圆、椭圆生成算法

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

在图像需要位置画方框_opencv(1)

简介   本篇开始是学习opencv笔记的第一章,本章主要需要学会内容有: (1)新建空白图片。 (2)在空白图片中画方框、圆等图形。 (3)载入已有图片,进行修改然后保存。 (4)利用imageRO...

C#图片处理之:在图片上画框(圈)

有时候给别人演示图片,例如培训某个软件使用的时候,往往需要在画面上画个框或者圈,提醒用户注意这是个重点。其实这个功能并不难,只需要知道Pen对象的用法就可以了。我们对框或者圈样式的控制都可以通过对Pe...
  • ki1381
  • ki1381
  • 2007年08月13日 13:16
  • 8021

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

c# picturebox图片上画框框或圈圈

picturebox装载图片后,然后在在这个图片上用鼠标按下,再拖动大小,松开后就画了一个框,pictruebox尺寸和图片本身尺寸有关系的,每次画后都要重绘,效果图   直接贴代码: /// ...
  • lfqsy
  • lfqsy
  • 2011年03月30日 15:23
  • 8449
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 图形的绘制矩形椭圆
举报原因:
原因补充:

(最多只允许输入30个字)