ImageVerifierCode 换一换
你正在下载:

画线.docx

[预览]
格式:DOCX , 页数:31 ,大小:113.87KB ,
资源ID:11332609      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11332609.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(画线.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

画线.docx

1、画线描绘半透明的线、文字补充:不知道画像的表示方法的请先阅读图片文件的表示。对文字列描绘方法不清楚的,请参照文字的描绘。使用Color.FromArgb方法作成Color对象时,可以描写阿尔法的值。通过阿尔法的值可以指定透明度。阿尔法的值从0到255的整数,设定为0时效果为完全透明,255时不透明。通过值可以对从Color对象取得作成的Pen、Brush对象,描绘半透明的图形、文字。下面是半透明的矩形和文字描绘的例子。 VB.NET PictureBox1的Graphics对象取得 Dim g As Graphics = PictureBox1.CreateGraphics() 在图片的背景表

2、示 Dim bmp As New Bitmap(C:test.jpg) g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height) bmp.Dispose() 作成半透明的Pen Dim p As New Pen(Color.FromArgb(128, Color.Red), 12) g.DrawRectangle(p, New Rectangle(10, 60, 310, 60) p.Dispose() 作成半透明的格式刷 Dim b = New SolidBrush(Color.FromArgb(128, Color.Yellow) Dim f As New

3、 Font(Arial, 30) g.DrawString(BINGNING.NET, f, b, 15, 70) b.Dispose() f.Dispose() g.Dispose() 品质级别的指定描绘半透明图形和复数的图片重叠时,可以使用Graphics.CompositingQuality属性指定品质。CompositingQuality属性的枚举成员和说明如下表所示。成员名称说明AssumeLinear假定线性值。Default默认质量。GammaCorrected使用灰度校正。HighQuality高质量、低速度复合。HighSpeed高速度、低质量。Invalid无效质量。下面是

4、变更CompositingQuality的值进行描绘的例子。 VB.NET PictureBox1的Graphics对象取得 Dim g As Graphics = PictureBox1.CreateGraphics() 在背景表示图片 Dim bmp As New Bitmap(C:test.jpg) g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height) bmp.Dispose() 半透明的Pen作成 Dim p As New Pen(Color.FromArgb(128, Color.Yellow), 20) 描绘普通的线 g.DrawLine(p,

5、 10, 30, 100, 30) 使用Gamma修正线进行描绘 g.CompositingQuality = _ System.Drawing.Drawing2D.CompositingQuality.GammaCorrected g.DrawLine(p, 10, 60, 100, 60) p.Dispose() g.Dispose() 背景重新描绘上面的例子都是半透明的图形和背景混合描绘的。但时Graphics对象的CompositingMode方法设定为SourceCopy时,就不会和背景混合而重新描绘。如果CompositingMode方法设定为SourceOver时,就会恢复为混合

6、描绘。例子的代码如下所示。 VB.NET PictureBox1的Graphics对象取得 Dim g As Graphics = PictureBox1.CreateGraphics() 在背景表示图片 Dim bmp As New Bitmap(C:test.jpg) g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height) bmp.Dispose() 半透明的Pen作成 Dim p As New Pen(Color.FromArgb(160, Color.Yellow), 20) 描绘普通的线 g.DrawLine(p, 10, 30, 100, 30)

7、 背景色重新描绘 g.CompositingMode = _ System.Drawing.Drawing2D.CompositingMode.SourceOver g.DrawLine(p, 10, 60, 100, 60) p.Dispose() g.Dispose() 补充:图片的表示方法不清楚的,请参照图片文件的表示。Pen对象相关的说明请参照线的描绘。长方形(矩形)的描绘描绘长方形需要使用Graphics.DrawRectangle方法。下面的例子是在位置(10, 20),使用宽度为1的黑色线,在图片控件(PictureBox1)中描绘一个100x 80的长方形。 VB.NET Gr

8、aphics对象的作成 Dim g As Graphics = PictureBox1.CreateGraphics() Pen对象的作成(宽度为1的黑色线) (不作成Pen对象,使用Pens.Black也可以) Dim p As New Pen(Color.Black, 1) (10,20,100,80)的长方形描绘 g.DrawRectangle(p, 10, 20, 100, 80) 释放资源 p.Dispose() g.Dispose() 多个长方形的描绘描绘多个长方形时,可以使用DrawRectangles方法。 VB.NET Graphics对象的作成 Dim g As Graph

9、ics = PictureBox1.CreateGraphics() Pen对象的作成(宽度为1的黑色线) (不作成Pen对象,使用Pens.Black也可以) Dim p As New Pen(Color.Black, 1) 3个长方形的位置和大小放入数组中 Dim recst As Rectangle() = _ New Rectangle(0, 0, 40, 20), New Rectangle(10, 5, 20, 50), _ New Rectangle(5, 10, 50, 40) 长方形描绘 g.DrawRectangles(p, recst) 资源释放 p.Dispose()

10、g.Dispose() 不规则多角形的描绘如下图所示,描绘不规则多角形可以使用DrawPolygon方法。 VB.NET Graphics对象的作成 Dim g As Graphics = PictureBox1.CreateGraphics() 线的链接点存入数组 Dim ps As Point() = New Point(0, 0), New Point(150, 50), _ New Point(80, 100), New Point(100, 150) 描绘 g.DrawPolygon(Pens.Black, ps) 资源释放 g.Dispose() 椭圆的描绘椭圆(圆)的描绘可以使用

11、DrawEllipse方法。在描绘时,椭圆的位置和大小,使用外面的四角形的位置和大小指定。下面的例子是在位置(10, 20)先描绘一个大小为100x80的四角形,然后在四角形中描绘椭圆形。 VB.NET Graphics对象的作成 Dim g As Graphics = PictureBox1.CreateGraphics() 在位置(10, 20)处描绘一个大小为100x80的红色四角形 g.DrawRectangle(Pens.Red, 10, 20, 100, 80) 在四角形中描绘一个黑色的椭圆形 g.DrawEllipse(Pens.Black, 10, 20, 100, 80) 资

12、源释放 g.Dispose() 描绘圆弧圆弧的描绘可以使用DrawArc方法。圆弧是作为椭圆形的一部分被描绘的。使用和上面例子一样的方法描绘一个椭圆,然后指定截取的开始角度(X坐标的0度)和Sweep角度。下面的例子是先描绘一个椭圆,然后指定开始角度0度,Sweep角度为90度的圆弧。 VB.NET Graphics对象的作成 Dim g As Graphics = PictureBox1.CreateGraphics() 在位置(10, 20)处描绘一个100x80的红色四角形 g.DrawRectangle(Pens.Red, 10, 20, 100, 80) 使用黑色线截取椭圆一部分描绘

13、 (开始角度为 0度、Sweep角度为 90度)圆弧 g.DrawArc(Pens.Black, 10, 20, 100, 80, 0, 90) 资源释放 g.Dispose() 扇形的描绘扇形的描绘可以使用DrawPie方法,使用方法和DrawArc方法完全一样。下面的例子是使用上面所介绍的DrawArc方法的代码,只是把DrawArc变更为DrawPie。 VB.NET Graphics对象的作成成 Dim g As Graphics = PictureBox1.CreateGraphics() 在位置(10, 20)处描绘一个100x80的红色四角形 g.DrawRectangle(Pe

14、ns.Red, 10, 20, 100, 80) 使用黑色线截取椭圆一部分描绘 (开始角度为 0度、Sweep角度为 90度)扇形 g.DrawPie(Pens.Black, 10, 20, 100, 80, 0, 90) 资源释放 g.Dispose() 使用路线(Path)描绘图形补充:不知道画像的表示方法的请先阅读图片文件的表示。关于Pen对象的说明请参照线的描绘。线、图形的描绘方法在线的描绘曲线的描绘长方形、多角形、椭圆、圆弧、扇形的描绘文字的描绘中详细的说明。除此之外还有使用路线(GraphicsPath对象)、Graphics.DrawPath方法的描绘方法。路径是由各种线、图形所

15、构成的。在线的描绘曲线的描绘长方形、多角形、椭圆、圆弧、扇形的描绘文字的描绘中所介绍的都可以用于向路径追加。实际向GraphicsPath对象追加图形,可以使用Add?为名称的方法。Add?方法和Graphics类的Draw?方法相对应,如果知道Draw?的使用方法,那对于Add?就很好理解。Graphics方法GraphicsPath方法说明DrawArcAddArc向当前图形追加一段椭圆弧。DrawBezierAddBezier在当前图形中添加一段立方贝塞尔曲线。DrawBeziersAddBeziers在当前图形中添加一系列相互连接的立方贝塞尔曲线。DrawClosedCurveAddC

16、losedCurve向此路径添加一个闭合曲线。由于曲线经过数组中的每个点,因此使用基数样条曲线。DrawCurveAddCurve向当前图形添加一段样条曲线。由于曲线经过数组中的每个点,因此使用基数样条曲线。DrawEllipseAddEllipse向当前路径添加一个椭圆。DrawLineAddLine向此GraphicsPath追加一条线段。DrawLinesAddLines向此GraphicsPath末尾追加一系列相互连接的线段。DrawPathAddPath将指定的GraphicsPath追加到该路径。DrawPieAddPie向此路径添加一个扇形轮廓。DrawPolygonAddPol

17、ygon向此路径添加多边形。DrawRectangleAddRectangle向此路径添加一个矩形。DrawRectanglesAddRectangles向此路径添加一系列矩形。DrawStringAddString向此路径添加文本字符串。下面的例子是向GraphicsPath对象追加图形,而路径是使用Graphics.DrawPath方法进行描绘。 VB.NET Graphics对象的作成 Dim g As Graphics = PictureBox1.CreateGraphics() GraphicsPath对象的作成 Dim myPath As New GraphicsPath 开始新的

18、图形 myPath.StartFigure() 追加2条直线 myPath.AddLine(0, 0, 50, 50) myPath.AddLine(100, 0, 150, 50) 关闭图形 myPath.CloseFigure() 开始新的图形 myPath.StartFigure() 追加2条直线 myPath.AddLine(0, 60, 50, 110) myPath.AddLine(100, 60, 150, 110) 开始新的图形 myPath.StartFigure() 追加直线 myPath.AddLine(100, 120, 150, 170) 开始新的图形 myPath.

19、StartFigure() 追加直线 myPath.AddLine(0, 120, 50, 170) 追加2个四角形 myPath.AddRectangle(New Rectangle(160, 10, 60, 80) myPath.AddRectangle(New Rectangle(160, 100, 60, 60) 描绘路线图形 g.DrawPath(Pens.Black, myPath) 释放资源 g.Dispose() 结果如下图所示。描绘角圆滑的矩形补充:如果四角形的描绘方法不知道,请先参照长方形、多角形、椭圆、圆弧、扇形的描绘。通过Pen类的LineJoin属性,可以描绘四角形的

20、角、转折角部分的形状。下面的例子是使用LineJoin属性,描绘各式四角形。 VB.NET Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs) MyBase.OnPaint(e) Pen的作成 Dim blackPen As New Pen(Color.Black, 10) 设定LineJoin属性为Bevel描绘四角形 blackPen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel e.Graphics.DrawRectangle(blackPen, New Rectan

21、gle(70, 10, 40, 40) 设定LineJoin属性为Miter描绘四角形 blackPen.LineJoin = System.Drawing.Drawing2D.LineJoin.Miter e.Graphics.DrawRectangle(blackPen, New Rectangle(130, 10, 40, 40) 设定LineJoin属性为MiterClipped描绘四角形 blackPen.LineJoin = System.Drawing.Drawing2D.LineJoin.MiterClipped e.Graphics.DrawRectangle(blackPe

22、n, New Rectangle(190, 10, 40, 40) 设定LineJoin属性为Round描绘四角形(角为圆弧) blackPen.LineJoin = System.Drawing.Drawing2D.LineJoin.Round e.Graphics.DrawRectangle(blackPen, New Rectangle(250, 10, 40, 40) End Sub 结果如下图所示。变更Pen的配置补充:线的描绘方法请参照这里。描绘宽度为1的线时,线会很清楚的被描绘不会出现什么问题。但是描绘宽度比1大就需要注意了。也就是说,指定坐标描绘宽度为2以上的线时,在相同的坐标

23、处描绘宽度为1的线时,结果线会在中央被描绘。还是看看下面的例子和结果吧。 VB.NET Graphics对象作成 Dim g As Graphics = PictureBox1.CreateGraphics() Pen对象作成(宽度为2的黑色) Dim blackPen As New Pen(Color.Black, 2) 描绘横线 g.DrawLine(blackPen, 10, 10, 20, 10) 描绘宽度为1的黄色横线 g.DrawLine(Pens.Yellow, 10, 10, 20, 10) 描绘竖线 g.DrawLine(blackPen, 10, 20, 10, 30) 描

24、绘宽度为1的黄色竖线 g.DrawLine(Pens.Yellow, 10, 20, 10, 30) 描绘斜线 g.DrawLine(blackPen, 10, 40, 20, 50) 描绘宽度为1的黄色斜线 g.DrawLine(Pens.Yellow, 10, 40, 20, 50) 资源释放 blackPen.Dispose() g.Dispose() 下图为结果所示(放大10倍)。封闭图形描绘时的配置变更封闭图开描绘时的配置,可以根据Pen对象的Alignment属性进行变更。下面的例子是,Alignment属性变更为PenAlignment.Inset时描绘的结果。 VB.NET G

25、raphics对象作成 Dim g As Graphics = PictureBox1.CreateGraphics() Pen对象作成(宽度为5的黑色) Dim blackPen As New Pen(Color.Black, 5) 描绘宽度为5的黑色矩形 g.DrawRectangle(blackPen, 10, 10, 50, 50) 描绘宽度为1的黄色矩形 g.DrawRectangle(Pens.Yellow, 10, 10, 50, 50) Pen的配置变更为Inset blackPen.Alignment = System.Drawing.Drawing2D.PenAlignme

26、nt.Inset 描绘宽度为5的黑色矩形 g.DrawRectangle(blackPen, 70, 10, 50, 50) 描绘宽度为1的黄色矩形 g.DrawRectangle(Pens.Yellow, 70, 10, 50, 50) 资源释放 blackPen.Dispose() g.Dispose()曲线的描绘补充:如果图片的表示方法不清楚,请参照图片文件的表示。Pen对象的相关说明请参照线的描绘。圆、椭圆、圆弧的描绘方法请参照这里。描绘Cardinals Prine首先使用Graphics.DrawCurve方法描绘Cardinals Prine。经过指定的点描绘出圆滑的曲线。?圆滑

27、度?可以通过指定Tension实现,通常值为01之间。默认值为0.5。下面的例子是,使用DrawCurve方法的各种设定进行描绘。 VB.NET Imports System.Drawing Imports System.Drawing.Drawing2D 上面2行代码写在所有代码的代码最上面 Graphics对象作成 Dim g As Graphics = PictureBox1.CreateGraphics() 曲线经过的点必须的4个点以上 Dim point1 As New Point(30, 20) Dim point2 As New Point(60, 150) Dim point3

28、 As New Point(120, 30) Dim point4 As New Point(200, 140) Dim point5 As New Point(220, 100) Dim point6 As New Point(190, 60) Dim curvePoints As Point() = _ point1, point2, point3, point4, point5, point6 Pen对象作成(宽度为3的蓝色) Dim bluePen As New Pen(Color.Blue, 3) 描绘Cardinals Prine,Tension设定为0.5 g.DrawCurve

29、(bluePen, curvePoints, 0.5F) Pen对象作成(宽度为3的红色) Dim redPen As New Pen(Color.Red, 3) 描绘Cardinals Prine g.DrawCurve(redPen, curvePoints, 1) Pen对象作成(宽度为3的绿色) Dim greenPen As New Pen(Color.Green, 3) 描绘Cardinals Prine,Tension设定为0(为直线) g.DrawCurve(greenPen, curvePoints, 0) Pen对象作成(宽度为1的黄色) Dim yellowPen As New Pen(Color.Yellow, 1) 描绘Cardinals Prine 从第1个点到第5个点经过 g.DrawCurve(yellowPen, curvePoints, 1, 3, 0.5F) Pen对象作成(宽度为1的黑色) Dim blackPen As New Pen(Color.Black, 1) 描绘Cardinals P

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1