Wie zeichne ich mit Pillow Formen auf ein Bild?

Oct 28, 2025

Eine Nachricht hinterlassen

Hallo! Als Kissenlieferant verkaufe ich nicht nur erstklassige KissenHochwertiges, weiches Hotelbettkissen aus 100 % Polyester mit Hohlfaserfüllung,Hochwertiges Hotelkissen aus 100 % Polyesterfaser, UndHochwertiges weißes Gänsedaunenkissen für Hotels. Ich habe auch ein gewisses Händchen für Bildbearbeitung. Heute werde ich mit Ihnen teilen, wie Sie mit Pillow, einer superpraktischen Python-Bibliothek, Formen auf einem Bild zeichnen.

Was ist Kissen?

Lassen Sie uns zunächst darüber sprechen, was Pillow ist. Pillow ist ein Zweig der Python Imaging Library (PIL). Es ist einfach zu bedienen und bietet zahlreiche Funktionen zum Öffnen, Bearbeiten und Speichern verschiedener Bilddateiformate. Ob Sie ein Bastler sind, der Ihren Urlaubsfotos coole Effekte hinzufügen möchte, oder ein professioneller Designer, der an einem Projekt arbeitet, Pillow kann Ihr bester Freund sein.

Kissen installieren

Bevor wir mit dem Zeichnen von Formen beginnen, müssen wir Pillow installieren. Wenn Sie pip verwenden (was die häufigste Methode zum Installieren von Python-Paketen ist), öffnen Sie einfach Ihre Eingabeaufforderung oder Ihr Terminal und geben Sie Folgendes ein:

Pip Kissen installieren

Das ist es! Im Handumdrehen ist Pillow einsatzbereit.

Grundformen zeichnen

Beginnen wir mit den Grundlagen. Wir zeichnen einige einfache Formen auf ein Bild. Zuerst müssen wir die notwendigen Module importieren und ein Bild öffnen.

aus PIL importieren Image, ImageDraw # Ein Bild öffnen image = Image.open('your_image.jpg') draw = ImageDraw.Draw(image)

Im obigen Code importieren wir zunächst dieBildUndImageDrawKlassen aus der Pillow-Bibliothek. Dann öffnen wir eine Bilddatei (Sie sollten ersetzen'Ihr_Bild.jpg'mit dem tatsächlichen Pfad zu Ihrem Bild). DerImageDraw.Draw()Die Funktion erstellt ein Objekt, mit dem wir auf dem Bild zeichnen können.

Premium Soft 100% Polyester Hotel Hollow Fiber Filled Bed Pillow factoryPremium Soft 100% Polyester Hotel Hollow Fiber Filled Bed Pillow manufacturers

Eine Linie zeichnen

Eine Linie zu zeichnen ist super einfach. Sie müssen lediglich den Start- und Endpunkt der Linie sowie die Farbe und Breite angeben.

# Eine Linie zeichnen draw.line((100, 100, 200, 200), fill='red', width=2)

In diesem Beispiel beginnt die Linie am Punkt(100, 100)und endet um(200, 200). Die Linie ist rot gefärbt und hat eine Breite von 2 Pixeln.

Ein Rechteck zeichnen

Als nächstes zeichnen wir ein Rechteck. Sie müssen die obere linke und die untere rechte Ecke des Rechtecks ​​angeben.

# Zeichne ein Rechteck draw.rectangle((300, 300, 400, 400), outline='blue', width=2)

Hier hat das Rechteck seine obere linke Ecke(300, 300)und seine untere rechte Ecke bei(400, 400). Der Umriss des Rechtecks ​​ist blau und hat eine Breite von 2 Pixel.

Eine Ellipse zeichnen

Auch das Zeichnen einer Ellipse ist unkompliziert. Sie geben den Begrenzungsrahmen der Ellipse an (das Rechteck, das sie umschließen würde).

# Eine Ellipse zeichnen draw.ellipse((500, 500, 600, 600), fill='green')

In diesem Fall ist die Ellipse mit grüner Farbe gefüllt und wird durch das Rechteck mit der oberen linken Ecke begrenzt(500, 500)und unten - rechte Ecke(600, 600).

Zeichnen mit mehr Kontrolle

Manchmal möchten Sie vielleicht mehr Kontrolle darüber haben, wie Ihre Formen aussehen. Beispielsweise möchten Sie möglicherweise eine Form mit einer Verlaufsfüllung oder einem gestrichelten Umriss zeichnen.

Verlaufsfüllung

Um eine Verlaufsfüllung zu erstellen, können wir eine Schleife verwenden, um mehrere Linien mit unterschiedlichen Farben zu zeichnen. Hier ist ein Beispiel für die Erstellung einer vertikalen Verlaufsfüllung für ein Rechteck:

aus PIL-Import Image, ImageDraw image = Image.open('your_image.jpg') draw = ImageDraw.Draw(image) # Zeichne ein Rechteck mit vertikaler Farbverlaufsfüllung start_color = (255, 0, 0) # Rot end_color = (0, 0, 255) # Blau x1, y1, x2, y2 = 100, 100, 200, 200 height = y2 - y1 für y im Bereich(y1, y2): r = int(start_color[0] + (end_color[0] - start_color[0]) * (y - y1) / Höhe) g = int(start_color[1] + (end_color[1] - start_color[1]) * (y - y1) / Höhe) b = int(start_color[2] + (end_color[2] - start_color[2]) * (y - y1) / height) draw.line((x1, y, x2, y), fill=(r, g, b))

In diesem Code definieren wir zunächst die Start- und Endfarben des Farbverlaufs. Dann durchlaufen wir jede horizontale Linie innerhalb des Rechtecks ​​und berechnen die Farbe für diese Linie basierend auf ihrer Position.

Gestrichelter Umriss

Das Zeichnen einer gestrichelten Kontur kann Ihren Formen ein einzigartiges Aussehen verleihen. Dies können wir erreichen, indem wir eine Reihe kurzer Linien mit Lücken dazwischen zeichnen.

aus PIL-Import Image, ImageDraw image = Image.open('your_image.jpg') draw = ImageDraw.Draw(image) # Zeichne ein Rechteck mit gestricheltem Umriss x1, y1, x2, y2 = 300, 300, 400, 400 dash_length = 5 gap_length = 3 für x in range(x1, x2, dash_length + gap_length): draw.line((x, y1, x + dash_length, y1), fill='gelb', Breite=2) draw.line((x, y2, x + dash_length, y2), fill='gelb', Breite=2) für y in Bereich(y1, y2, dash_length + Lückenlänge): draw.line((x1, y, x1, y + dash_länge), fill='gelb', Breite=2) draw.line((x2, y, x2, y + dash_length), fill='gelb', width=2)

In diesem Beispiel definieren wir die Länge der Striche und die Lücken zwischen ihnen. Dann durchlaufen wir die Seiten des Rechtecks ​​und zeichnen die gestrichelten Linien.

Speichern des geänderten Bildes

Sobald wir mit dem Zeichnen der Formen auf dem Bild fertig sind, müssen wir es speichern. Es ist so einfach wie:

image.save('modified_image.jpg')

Einfach ersetzen'modified_image.jpg'mit dem Namen, den Sie Ihrem neuen Bild geben möchten.

Erweitertes Formenzeichnen

Wir haben die Grundlagen behandelt, aber Pillow ermöglicht das Zeichnen viel komplexerer Formen. Sie können beispielsweise Polygone mit mehreren Seiten zeichnen.

from PIL import Image, ImageDraw image = Image.open('your_image.jpg') draw = ImageDraw.Draw(image) # Zeichne ein Polygon points = [(100, 100), (200, 150), (150, 250), (50, 200)] draw.polygon(points, fill='purple')

In diesem Code definieren wir eine Liste von Punkten, die die Eckpunkte des Polygons bilden. Dann verwenden wir diePolygon()Methode zum Zeichnen des Polygons und zum Füllen mit violetter Farbe.

Abschluss

Das Zeichnen von Formen auf einem Bild mit Pillow macht Spaß und ist einfach. Egal, ob Sie einfache Linien und Rechtecke hinzufügen oder komplexe Polygone mit Farbverlaufsfüllungen erstellen, mit Pillow haben Sie die Möglichkeit, Ihre Bilder auf erstaunliche Weise zu transformieren.

Wenn Sie auf der Suche nach hochwertigen Kissen sind, vergessen Sie nicht, sich unsere Produkte anzusehenHochwertiges, weiches Hotelbettkissen aus 100 % Polyester mit Hohlfaserfüllung,Hochwertiges Hotelkissen aus 100 % Polyesterfaser, UndHochwertiges weißes Gänsedaunenkissen für Hotels. Wir sind immer auf der Suche nach neuen Partnern und Kunden. Wenn Sie daran interessiert sind, unsere Kissen in großen Mengen zu kaufen, können Sie sich gerne für ein Beschaffungsgespräch an uns wenden.

Referenzen

  • Offizielle Dokumentation des Kissens
  • Offizielle Python-Dokumentation

Anfrage senden