GDI+学习记录(11)- 纹理画刷 TextureBrush的基本使用

  纹理画刷(TextureBrush)实际上就是将图片在目标区域进行平铺,同影线画刷(HatchBrush)类似,纹理画刷也是使用同样的基本图案在水平方向和垂直方向上进行一定顺序排列之后构成的画刷。不同的是,影线画刷使用的基本图案是由简单的点、线条构成的,其色彩也只有前景色和背景色。而纹理画刷使用的基本图案为导入的图片或导入图片的部分区域,色彩也是任意的。下为纹理画刷的基本使用Demo。

Demo:

 private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.Clear(Color.White);

            Rectangle rect1 = new Rectangle(10,10,300,300);
            Rectangle rect2 = new Rectangle(350,10,300,300);
            Pen p = new Pen(Color.Green,3);
            //导入图片
            Image img = Image.FromFile(@"C:\Users\ThinkPad\Desktop\GDIPulsTextureBrush\Nemo.bmp");

            //使用图片的原始大小构建纹理画刷
            TextureBrush tb1 = new TextureBrush(img);

            //填充椭圆并绘制其边框
            g.FillEllipse(tb1,rect1);
            g.DrawEllipse(p,rect1);

            //使用图片的部分区域构建纹理画刷
            TextureBrush tb2 = new TextureBrush(img,new Rectangle(55,35,55,35));

            //填充椭圆并绘制其边框
            g.FillEllipse(tb2,rect2);
            g.DrawEllipse(p,rect2);

            //释放资源
            tb1.Dispose();
            tb2.Dispose();
            img.Dispose();
        }


图片原始大小:

 

Demo 运行效果图:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值