TextureBrush::SetTransform 方法 (gdiplusbrush.h)
TextureBrush::SetTransform 方法设置此纹理画笔的转换矩阵。
语法
Status SetTransform(
[in] const Matrix *matrix
);
parameters
[in] matrix
类型: const Matrix*
指向 Matrix 对象的指针,该对象指定要使用的转换矩阵。
返回值
类型: 状态
如果方法成功,则返回 Ok,这是 Status 枚举的元素。
如果 方法失败,它将返回 Status 枚举的其他元素之一。
注解
TextureBrush 对象维护可存储任何仿射转换的转换矩阵。 使用纹理画笔填充区域时,Windows GDI+ 会根据画笔的转换矩阵转换画笔的图像,然后填充该区域。 转换后的图像仅在呈现期间存在;不会转换 存储在 TextureBrush 对象中的图像。 例如,假设调用 ,然后使用 someTextureBrush.ScaleTransform (3) 绘制区域,然后使用 someTextureBrush 绘制区域。 画笔图像的宽度在绘制区域时是三倍,但存储在 someTextureBrush 中的图像保持不变。
示例
以下示例创建纹理画笔并设置画笔的转换。 然后,代码使用转换后的画笔填充椭圆。
VOID Example_SetTransform(HDC hdc)
{
Graphics graphics(hdc);
Matrix matrix(2, 0, 0, 1, 0, 0); // Horizontal stretch
Image image(L"HouseAndTree.gif");
TextureBrush textureBrush(&image);
textureBrush.SetTransform(&matrix);
graphics.FillEllipse(&textureBrush, 0, 0, 400, 200);
}
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | gdiplusbrush.h (包括 Gdiplus.h) |
Library | Gdiplus.lib |
DLL | Gdiplus.dll |