Mit Python und PIL habe ich zusammengefasst, wie ein Bild mit der aus der Zeichenfolge gezogenen Zeichenfolge ausgegeben wird. Ich bereite nur ein Hintergrundbild vor und zeichne Zeichen.
PIL PIL (Python Image Library) ist eine Python-Bildverarbeitungsbibliothek. Es scheint, dass die Entwicklung derzeit gestoppt ist, daher ist es besser, das Nachfolgekissen zu verwenden, aber es gibt zwei Punkte, bei denen PIL standardmäßig in Anaconda installiert ist und die mit der PIL-Funktion möglich waren. Daher wird PIL verwendet.
Ich konnte keine Seite mit dem Titel "Konvertieren einer Zeichenfolge in ein Bild" finden. Daher habe ich sie verwendet, nachdem ich untersucht hatte, wie Zeichen gezeichnet werden, während ich mir die Verwendung der Bildverarbeitungsbibliothek angesehen habe. Erstens glaube ich nicht, dass die Konvertierung von Zeichenketten in Bilder erforderlich ist, aber ich denke, dass es kleine Verwendungszwecke gibt, beispielsweise die Konvertierung von E-Mail-Adressen in Bilder als Gegenmaßnahme gegen unerwünschte E-Mails. Daher lautete der Titel "Konvertieren einer Zeichenfolge in ein Bild".
In der Arbeit bezog ich mich auf Verwendung der Python-Bildverarbeitungsbibliothek Pillow (PIL).
Nach dem Erstellen eines Image-Objekts mit "PIL.Image.new ()" wird mit "PIL.ImageDraw.Draw ()" ein Draw-Objekt erstellt. In PIL.Image.new ()
werden der Farbmodus, die Bildgröße und die Hintergrundfarbe als Argumente angegeben.
Geben Sie die in PIL.ImageFont.truetype
verwendete Schriftart und deren Größe an. Danach habe ich die Größe (Anzahl der Pixel) des zu zeichnenden Textes mit "draw.textsize ()" erhalten, den Text so angepasst, dass er an der gewünschten Stelle war, und ihn mit "draw.text ()" gezeichnet.
import PIL.Image
import PIL.ImageDraw
import PIL.ImageFont
#Einstellungen für Schriftart, Größe und zu zeichnenden Text
ttfontname = "C:\\Windows\\Fonts\\meiryob.ttc"
fontsize = 36
text = "Implizite Typdeklaration"
#Stellen Sie Bildgröße, Hintergrundfarbe und Schriftfarbe ein
canvasSize = (300, 150)
backgroundRGB = (255, 255, 255)
textRGB = (0, 0, 0)
#Erstellen eines Bildes zum Zeichnen von Zeichen
img = PIL.Image.new('RGB', canvasSize, backgroundRGB)
draw = PIL.ImageDraw.Draw(img)
#Zeichnen Sie eine Zeichenkette auf das vorbereitete Bild
font = PIL.ImageFont.truetype(ttfontname, fontsize)
textWidth, textHeight = draw.textsize(text,font=font)
textTopLeft = (canvasSize[0]//6, canvasSize[1]//2-textHeight//2) #1 von vorne/6, in der Mitte oben und unten platziert
draw.text(textTopLeft, text, fill=textRGB, font=font)
img.save("image.png ")
Das Bild wurde sicher ausgegeben.
Recommended Posts