Share via


Como desenhar uma linha preenchida com uma textura

Em vez de desenhar uma linha com uma cor sólida, você pode desenhar uma linha com uma textura. Para desenhar linhas e curvas com uma textura, crie um objeto e passe esse TextureBrush objeto para um TextureBrushPen construtor. O bitmap associado ao pincel de textura é usado para organizar lado a lado o plano (modo invisível) e quando a caneta desenha uma linha ou curva, o traço de caneta revela determinados pixels da textura lado a lado.

Exemplo

O exemplo a seguir cria um Bitmap objeto a partir do arquivo Texture1.jpg. Esse bitmap é usado para construir um objeto e o TextureBrush objeto é usado para construir um TextureBrushPen objeto. A chamada para DrawImage desenha o bitmap com seu canto superior esquerdo em (0, 0). A chamada para usa o Pen objeto para DrawEllipse desenhar uma elipse texturizada.

A ilustração a seguir mostra o bitmap e a elipse texturizada:

Screenshot that shows the bitmap and the textured ellipse.

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)

Compilando o código

Crie um Windows Form e manipule o evento do Paint formulário. Cole o código anterior no manipulador de Paint eventos. Substitua Texture.jpg por uma imagem válida no sistema.

Confira também