Vorgehensweise: Zeichnen einer mit einer Textur ausgefüllten Linie
Anstatt eine Linie mit einer Volltonfarbe zu zeichnen, können Sie eine Linie mit einer Textur zeichnen. Zum Zeichnen von Linien und Kurven mit einer Textur erstellen Sie ein TextureBrush-Objekt und übergeben dieses TextureBrush-Objekt an einen Pen-Konstruktor. Die mit dem Texturpinsel verknüpfte Bitmap wird verwendet, um die Ebene (unsichtbar) mit Kacheln auszufüllen, und wenn der Stift eine Linie oder Kurve zeichnet, legt der Strich des Stifts bestimmte Pixel der gekachelten Textur frei.
Beispiel
Das folgende Beispiel erstellt ein Bitmap-Objekt aus der Datei Texture1.jpg
. Diese Bitmap wird zum Erstellen eines TextureBrush-Objekts verwendet, und das TextureBrush-Objekt wird zum Erstellen eines Pen-Objekts verwendet. Durch den Aufruf von DrawImage wird die Bitmap mit ihrer oberen linken Ecke an (0, 0) gezeichnet. Der Aufruf von DrawEllipse verwendet das Pen-Objekt, um eine Ellipse mit Textur zu zeichnen.
Die folgende Abbildung zeigt die Bitmap und die Ellipse mit Textur:
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)
Kompilieren des Codes
Erstellen Sie ein Windows-Formular, und verarbeiten Sie das Paint-Ereignis des Formulars. Fügen Sie den voranstehenden Code in den Paint-Ereignishandler ein. Ersetzen Sie Texture.jpg
durch ein Bild, das auf Ihrem System gültig ist.
Siehe auch
.NET Desktop feedback
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für