如何:绘制用纹理填充的线条
可以使用纹理绘制线条,而不是使用纯色绘制线条。 若要使用纹理绘制线条和曲线,请创建一个 TextureBrush 对象,并将该 TextureBrush 对象传递给 Pen 构造函数。 与纹理画笔关联的位图用于(不可见地)平铺平面,当笔绘制线条或曲线时,笔划会显露出平铺纹理的某些像素。
例
以下示例从文件 Texture1.jpg
创建 Bitmap 对象。 该位图用于构造 TextureBrush 对象,TextureBrush 对象用于构造 Pen 对象。 通过调用 DrawImage 绘制位图,其左上角位于 (0,0)。 调用 DrawEllipse 使用 Pen 对象绘制纹理椭圆。
下图显示了位图和纹理椭圆:
Bitmap bitmap = new Bitmap("Texture1.jpg");
TextureBrush tBrush = new TextureBrush(bitmap);
Pen texturedPen = new Pen(tBrush, 30);
e.Graphics.DrawImage(bitmap, 0, 0, bitmap.Width, bitmap.Height);
e.Graphics.DrawEllipse(texturedPen, 100, 20, 200, 100);
Dim bitmap As New Bitmap("Texture1.jpg")
Dim tBrush As New TextureBrush(bitmap)
Dim texturedPen As New Pen(tBrush, 30)
e.Graphics.DrawImage(bitmap, 0, 0, bitmap.Width, bitmap.Height)
e.Graphics.DrawEllipse(texturedPen, 100, 20, 200, 100)
编译代码
创建 Windows 窗体并处理窗体的 Paint 事件。 将上述代码粘贴到 Paint 事件处理程序中。 将 Texture.jpg
替换为系统上有效的映像。
另请参阅
- 使用笔绘制线条和形状
- 在 Windows 窗体中进行图形和绘图