2011-09-12 22:33:30| 分类: c# 基础 | 标签: |举报 |字号大中小 订阅
怎么绘制图像
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
需要命名空间有:
using System.Drawing
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
//首先要有一张画布
Bitmap bmp1 = new Bitmap(@"f:\myPic.bmp"); //创建一张图片作为画布 有很多方法,一下列出三种方法
Bitmap bmp2 = Bitmap.FromFile(@"f:\myPic.bmp") as Bitmap;
Bitmap bmp3 = new Bitmap(200,200);
Graphics g = Graphics.FromImage(bmp3);//获取图片的绘图表面,使用Graphics g 在其上面绘画,相当于有了画板
//其次要有画图的工具如画笔pen,画刷brush
//创建画刷 (注意Brush是抽象类)
Brush brush1 = Brushes.Coral;//从Brushes类中得到一种已经定义好的画刷
//有五个重brush继承的画刷类: SolidBrush(实心画刷) TextureBrush(纹理画刷 即用图像填充) HatchBrush(阴影画刷)
//LinearGradientBrush(渐变画刷) PathGradientBrush
SolidBrush brush2 = new SolidBrush(Color.FromArgb(1, 2, 3));
//创建画笔
Pen pen = new Pen(brush1);
Pen pen1 = new Pen(Color.Red);
Pen pen2 = new Pen(brush1, 2);//指定的画刷,指定的画笔宽度
Pen pen3 = Pens.Aqua;//从Pens类中得到一种已经定义好的画笔
//最后就是要在画板上面画什么图案了
//画线
Point pStart=new Point (1,1);//指定起点和终点
Point pEnd=new Point (50,50);
pen.DashStyle = DashStyle.DashDot; //指定笔的样式 画一条虚线
pen.StartCap = LineCap.AnchorMask; //指定线头的外观
pen.EndCap = LineCap.AnchorMask;
g.DrawLine(pen, pStart, pEnd);//画直线
//画平面几何图形 g.DrawXXX("画笔","几何图形") 画的是空心的几何图形
// g.FillXXX("画刷",“几何图形”)画的是实心的几何图形
//画矩形
Rectangle rect = new Rectangle(1, 2, 50, 50);//定义一个矩形框
g.DrawRectangle(pen, rect);//画空心的矩形
g.FillRectangle(brush1 ,rect);//画实心的矩形
g.DrawEllipse(pen, rect);//画空心椭圆
g.FillEllipse(brush1, rect);//画实心椭圆
//绘制文本 使用 g.DrawString(“要绘制的文本”,“字体”,“画刷”,“绘制文本的左上角的位置”);
string text = "我是宋体";
Font font = new Font("宋体",16);
SolidBrush brush = new SolidBrush(Color.Black);
Point pt = new Point(1,1);
PointF ptf = new PointF(1.1f, 1.2f);//Point类与PointF类的区别就是x,y属性的类型不同,一个是整型,一个是浮点型
g.DrawString(text, font, brush, pt);