TextureBrush::TextureBrush (Image*,constRect&,constImageAttributes*) 方法 (gdiplusbrush.h)
基于图像、定义矩形和一组图像属性创建 TextureBrush 对象。
语法
void TextureBrush(
[in] Image *image,
[in, ref] const Rect & dstRect,
[in] const ImageAttributes *imageAttributes
);
参数
[in] image
类型: 图像*
指向 Image 对象的指针,该对象包含要使用的图像的位图。
[in, ref] dstRect
类型: 矩形
对矩形的引用,该矩形定义此纹理画笔的大小以及此纹理画笔要使用的图像部分。 如果 Image 对象是从图元文件创建的,则画笔将使用整个图像,该图像会根据画笔的大小进行缩放。
[in] imageAttributes
类型: ImageAttributes*
可选。 指向包含图像属性的 ImageAttributes 对象的指针。 默认值为 NULL。
返回值
无
备注
dstRect 矩形的宽度和高度定义纹理画笔的宽度和高度。 纹理画笔始终面向 (0,0) 。 矩形的左上角点、宽度和高度指定纹理画笔要使用的图像部分的起点、宽度和高度。
此构造函数如何使用具有非可识别图像的 dstRect 矩形
如果 dstRect 矩形的尺寸小于画笔所基于的图像的尺寸,则剪裁画笔的图像是图像的一部分。 如果 dstRect 矩形的尺寸等于图像的尺寸,则画笔的图像与图像相同。 dstRect 矩形不得包含图像尺寸以外的区域。 这样做将产生不可预知的行为或生成运行时错误。 例如,假设图像为 256 ×256 像素,并且基于此图像创建 TextureBrush 对象,并作为 dstRect 参数传递。 画笔将使用图像左下角部分。 此部分的左下角也是图像的左下角。 现在,假设基于同一图像创建另一个 TextureBrush 对象,并作为 dstRect 参数传递。 请注意,此矩形的最上部坐标为 157 而不是 156。 此矩形将一个单位扩展到图像的高度之外,并且很可能生成访问冲突。此构造函数如何将 dstRect 矩形与图元文件图像配合使用
如果 dstRect 矩形的尺寸与图像的尺寸不同,则画笔的图像会根据需要缩小或变大以适应矩形。 例如,假设有一个 256 ×256 像素的图元文件图像,并且创建了 一个 TextureBrush 对象,该对象作为 dstRect 参数传递。 画笔的图像将包括所有图元文件图像,但会缩放以适应画笔:它将垂直挤压和水平拉伸。 如果矩形的尺寸等于图像的尺寸,则画笔的图像与图像相同。要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | gdiplusbrush.h (包括 Gdiplus.h) |
Library | Gdiplus.lib |
DLL | Gdiplus.dll |