GDI+学习记录(3)-画笔线型 DashStyle

     通过使用Pen 类的属性DashStyle 可以设置或者访问画笔的线型,GDI+ 在 DashStyle 枚举中提供了5中常见的画笔线型风格,DashStyle 不同的枚举值及其含义如下表所示:

 DashStyle 不同的枚举值 

 成员

  说明

Solid指定实线
Dash指定由划线段组成的直线
Dot指定由点构成的直线
DashDot定由重复的划线点图案构成的直线
DashDotDot指定由重复的划线点点图案构成的直线
Custom指定用户定义的自定义划线段样式

 

 

 

 

 

 

 

 

 

        DashStyle 枚举主要定义了实线、虚线、点线、点划线、双点划线和自定义的线型,每种不同的线型从下图可以一目了然:

 

上图中最后一条直线中,使用的是自定义的线型,所谓的自定义就是GDI+内置的5种线型(如 Solid 、Dash 等)不能满足你的要求,此时就需要自己来设计自己需要的线型了,通过设置Pen 类的 DashPattern 属性,可以使用一个预定义的数组类描述画笔的虚实,数组的格式为:

      

 [画笔部分长度,间隔部分长度,画笔部分长度,间隔部分长度......]

 

例程:

       添加命名空间:

     using System.Drawing.Drawing2D;
        private void button1_Click(object sender, EventArgs e)
        {
            Graphics g = this.CreateGraphics();
            g.Clear(Color.White);

            //默认为实线
            Pen p = new Pen(Color.Red, 3);

            g.DrawRectangle(p, 50, 50, 200, 100);

            //设置画笔线型
            p.DashStyle = DashStyle.DashDotDot;
            g.DrawRectangle(p, 50, 200, 200, 100);

            //使用自定义线型
            float[] dashArray = {
                5.0f,  //线长5个像素
                2.0f,  //间断2个像素
                15.0f, //线长15个像素
                8.0f   //间断4个像素
                                };

            p.DashPattern = dashArray;
            p.Color = Color.Black;
            g.DrawLine(p,280,100,500,100);

            //释放资源
            p.Dispose();
            g.Dispose();
        }


效果图:


 

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值