Freigeben über


So geht's: Eine Linie zeichnen, die mit einer Textur gefüllt ist

Anstatt eine Linie mit einer Volltonfarbe zu zeichnen, können Sie eine Linie mit einer Textur zeichnen. Um Linien und Kurven mit einer Textur zu zeichnen, erstellen Sie ein TextureBrush Objekt, und übergeben Sie dieses TextureBrush Objekt an einen Pen Konstruktor. Die Bitmap, die mit dem Texturpinsel verknüpft ist, wird verwendet, um die Ebene unsichtbar zu kacheln. Wenn der Stift eine Linie oder Kurve zeichnet, legt der Strich des Stifts bestimmte Pixel der gekachelten Textur frei.

Beispiel

Im folgenden Beispiel wird ein Bitmap Objekt aus der Datei Texture1.jpgerstellt. Diese Bitmap wird verwendet, um ein TextureBrush Objekt zu erstellen, und das TextureBrush Objekt wird verwendet, um ein Pen Objekt zu erstellen. Beim Aufruf von DrawImage wird die Bitmap mit ihrer oberen linken Ecke an der Position (0, 0) gezeichnet. Der Aufruf DrawEllipse verwendet das Pen-Objekt, um eine texturierte Ellipse zu zeichnen.

Die folgende Abbildung zeigt die Bitmap und die texturierte Ellipse:

Screenshot der Bitmap und der texturierten 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)

Code kompilieren

Erstellen Sie ein Windows-Formular, und verarbeiten Sie das Paint-Ereignis des Formulars. Fügen im Paint-Ereignishandler den vorigen Code ein. Ersetzen Sie Texture.jpg es durch ein bild, das auf Ihrem System gültig ist.

Siehe auch