Heim  >  Artikel  >  Backend-Entwicklung  >  Codebeispiele für die Implementierung von Emoticon-Paketen in Python

Codebeispiele für die Implementierung von Emoticon-Paketen in Python

Y2J
Y2JOriginal
2017-05-16 11:58:525140Durchsuche

Dieser Artikel stellt hauptsächlich die Methode zur Verwendung von Python für die einfache Bildverarbeitung und das Beispiel der automatischen Erzeugung von Emoticons vor. Es hat einen sehr guten Referenzwert.

Wie Eine Datenanalyse Lehrer sollten an ein Sprichwort glauben: „Ein Bild sagt mehr als tausend Worte.“ Aber worüber ich hier sprechen möchte, ist nicht die Datenvisualisierung, sondern eine Produktform, die bei allen Menschen beliebt ist – Emoticon-Pakete! ! ! !

Emoji-Paket ist nicht nur ein Symbol, sondern auch eine Kultur – eine der treibenden Kräfte zur Förderung der Sozialisierung und sogar der sozialen Entwicklung, genau wie Faulheit. Wir bestehen darauf, dass ein exzellentes Emoji ein Kunstwerk sein sollte, ein plötzlicher Inspirationsschub wie eine Frühlingsbrise über Nacht, eine laute emotionale Aufregung und der Wunsch, über das Meer zu segeln. Stolz ist der kleine glorreiche Sieg, der alle Berge in sich sieht die Welt – es kann von Programmierern nicht toleriert werden, die ihre übliche linear denkende Dekonstruktion mit festen Formen, festen Prozessen, ohne Schönheit, ohne künstlerische Veränderungen und Überraschungen anwenden. Allerdings wäre es bei der Erstellung von Emoticons zu gering, wenn wir die Bilder einfach mechanisch in PS importieren – den Text ändern – und exportieren würden, sodass wir immer noch diese sehr geringen mechanisierten, sich wiederholenden Aktionen verwenden Programm macht es.

Ich dachte immer, dass die automatische Bildverarbeitung auf JavaScript-Skripten zur Steuerung von PS oder KI beruht; später entdeckte ich, dass Python tatsächlich einige einfache Bildverarbeitungen durchführen kann, obwohl es möglicherweise nicht so leistungsfähig ist wie MATLAB. Daher werden bei der Bildverarbeitung die komplexen Teile immer noch manuell in PS oder AI erledigt, während die einfache Verarbeitung mit Python-Programmen erledigt werden kann.

Bevor wir mit der Arbeit beginnen, würdigen wir zunächst die Meilensteinfiguren der Emoji-Branche, weil sie den bedeutenden Fortschritt der Emojis im historischen Trend energisch vorantreiben Ihre Stimmen und ihr Lächeln werden in den täglichen sozialen Interaktionen der Menschen für immer erhalten bleiben und ihre herausragenden Beiträge werden für immer in das Denkmal der Emoticon-Geschichte eingraviert sein!

(Wenn Lizenzgebühren für Äußerungen erhoben werden könnten, wäre es nicht nötig, so hart zu arbeiten, um Ball, Film oder Rundfunk zu spielen...)

Materialvorbereitung

Hier nehmen wir den am weitesten verbreiteten Ausdruck von Kurator Jin im Internet als Mittelpunkt, mit dem niedlichen Pandakopf als Hintergrund, und fügen Text darunter hinzu, um einen zu bilden Emoticon-Paket.

Verarbeiten Sie dann die Bildgröße mit PS, stellen Sie die Vorlagengröße auf 250*250 ein und schneiden Sie die weißen Ränder des Ausdrucks zu .

Bildüberlagerung

Der erste Schritt besteht darin, den Ausdruck auf die Vorlage zu legen. Beachten Sie, dass unser Ausdrucksmaterial einen weißen Hintergrund anstelle von Transparenz hat, daher muss die Position sein Gut kontrolliert, sonst wird der Umriss verdeckt.

from PIL import Image, ImageDraw, ImageFont
img = Image.open(".\background.jpg")
jgz = Image.open(".\jgz.jpg")
img.paste(jgz,(73,42))
img.show()

Auf diese Weise sehen Sie das zusammengesetzte Bild:

Unter diesem Bild befindet sich ein Leerraum, den wir als letzten Schritt hinzufügen können Für Text. Komm schon, das teuflische Lächeln ist erschienen und der nächste Schritt ist der letzte Schlag, geht es dir gut?! Oh nein, bist du bereit?!

Textüberlagerung

Obwohl der Kern von Emoticons Ausdrücke sind, kann eine kurze und schockierende Textzeile oft den letzten Schliff geben, der die Seele direkt berührt.

draw = ImageDraw.Draw(img) 
ttfront = ImageFont.truetype('simhei.ttf', 24) 
draw.text((32, 190),"我的内心毫无波动\n 甚至还想笑",fill=(0,0,0), font=ttfront) 
img.show()
img.save(".\Python生成的表情包.jpg")

Auf diese Weise wird ein vollständiges Emoticon-Paket generiert:

wobei draw.text() Text in die Ebene eingeben soll, also Sie können diesen Befehl weiterhin ausführen, um dem Bild mehrere Textebenen hinzuzufügen.

Sie können auch mehrere Emoticons und mehrere Textzeilen importieren, sodass Sie automatisch Emoticon-Pakete in großem Maßstab erstellen können...

Problemsublimation

Hast du gedacht, dass es hier drüben wäre? Zu jung! Bitte denken Sie über diese Frage nach:

  • Der unter dem Emoji verbleibende Platz ist begrenzt

  • Der von Chinesisch, Englisch und Satzzeichen eingenommene Platz ist unterschiedlich

  • Wenn der Text zu lang ist, muss er umbrochen werden, aber wenn es zu viele Zeilen gibt, passt das Bild nicht

Daher Wenn Ihnen plötzlich eine Zeile in den Sinn kommt, die sowohl Chinesisch als auch Englisch und N-Anzahl von Satzzeichen enthält, um den Ton zu verbessern, wie entwerfen Sie einen Algorithmus, um die geeignete Schriftgröße, Texteinfügeposition und den Umbruch zu finden? den Text so, dass der Text in der Mitte eines begrenzten Raums angezeigt werden kann und ein bestimmtes Erscheinungsbild erfüllt?

Vergiss es, lass es uns hier beenden...

Durch dieses ernsthafte Tutorial haben wir gelernt, wie man Python für die einfache Bildverarbeitung verwendet, und haben uns sogar eine praktische magische Fähigkeit angeeignet: das automatische Erstellen von Emoticons.

Das Wichtigste ist, dass das, was ich oft sage: „Ob Sie es glauben oder nicht, ich werde viele Ihrer Emojis in wenigen Minuten stapelweise erstellen“, endlich Wirklichkeit geworden ist...

[Verwandte Empfehlungen]

1. Besondere Empfehlung: „php Programmer Toolbox“ V0.1 Version herunterladen

2 . Python Kostenloses Video-Tutorial

3. Python objektorientiertes Video-Tutorial

Das obige ist der detaillierte Inhalt vonCodebeispiele für die Implementierung von Emoticon-Paketen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn