texturebrush 创建时提示内存不足

今天使用了一下texturebrush,

using (Brush imgbrs = new TextureBrush(bmp, WrapMode.Tile, new Rectangle(0, 0, rect.Width, rect.Height)))
 { g.FillRectangle(imgbrs, rect); }

结果提示内存不足的错误,后来改成

using (Brush imgbrs = new TextureBrush(bmp, WrapMode.Tile, new Rectangle(0, 0, bmp.Width, bmp.Height)))
{ g.FillRectangle(imgbrs, rect); }

 就没问题了。

看来这个rect的范围只能在图片大小范围内,也就是说用图片创建的画刷,刷子的大小要小于图片大小。

你可能感兴趣的:(C#)