Freigeben über


Zeichnen einer Linie, die mit einer Textur gefüllt ist

Anstatt eine Linie oder Kurve mit einer Vollfarbe zu zeichnen, können Sie mit einer Textur zeichnen. Um Linien und Kurven mit einer Textur zu zeichnen, erstellen Sie ein TextureBrush-Objekt , und übergeben Sie die Adresse dieses TextureBrush-Objekts an einen Pen-Konstruktor . Das dem Texturpinsel zugeordnete Bild wird verwendet, um die Ebene (unsichtbar) zu kacheln. Wenn der Stift eine Linie oder Kurve zeichnet, werden durch den Strich des Stifts bestimmte Pixel der gekachelten Textur freigelegt.

Im folgenden Beispiel wird ein Image-Objekt aus der Datei Texture1.jpg erstellt. Dieses Bild wird verwendet, um ein TextureBrush-Objekt zu erstellen, und das TextureBrush-Objekt wird verwendet, um ein Pen-Objekt zu erstellen. Der Aufruf von Graphics::D rawImage zeichnet das Bild mit der linken oberen Ecke (0, 0). Der Aufruf von Graphics::D rawEllipse verwendet das Pen-Objekt , um eine texturierte Ellipse zu zeichnen.

Image         image(L"Texture1.jpg");
TextureBrush  tBrush(&image);
Pen           texturedPen(&tBrush, 30);

graphics.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
graphics.DrawEllipse(&texturedPen, 100, 20, 200, 100);

Die folgende Abbildung zeigt das Bild und die texturierte Ellipse.

Abbildung eines kleinen rechteckigen Bilds und dann eines elliptischen Liniensegments, das mit dem Originalbild gefüllt ist