Condividi tramite


Procedura: disegnare una linea con riempimento a trama

Invece di disegnare una linea con un colore a tinta unita, è possibile disegnare una linea con una trama. Per disegnare linee e curve con una trama, creare un TextureBrush oggetto e passare tale TextureBrush oggetto a un Pen costruttore. La bitmap associata al pennello trama viene usata per affiancare il piano (invisibile) e quando la penna disegna una linea o una curva, il tratto della penna rileva determinati pixel della trama affiancata.

Esempio

Nell'esempio seguente viene creato un Bitmap oggetto dal file Texture1.jpg. Tale bitmap viene usata per costruire un TextureBrush oggetto e l'oggetto TextureBrush viene usato per costruire un Pen oggetto . Chiamata a disegnare DrawImage la bitmap con l'angolo superiore sinistro in corrispondenza di (0, 0). La chiamata a DrawEllipse usa l'oggetto Pen per disegnare un'ellisse con trama.

La figura seguente mostra la bitmap e l'ellisse con trama:

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)

Compilazione del codice

Creare un Windows Form e gestire l'evento del Paint modulo. Incollare il codice precedente nel Paint gestore eventi. Sostituire Texture.jpg con un'immagine valida nel sistema.

Vedi anche