作為一個數(shù)據(jù)分析師,應該信奉一句話----"一圖勝千言"。不過這里要說的并不是數(shù)據(jù)可視化,而是一款全民向的產(chǎn)品形態(tài)----表情包!?。。?/span>
表情包不僅僅是一種符號,更是一種文化;是促進社交乃至社會發(fā)展的動力之一,就像懶。
我們堅持認為,一張優(yōu)秀的表情包,應該是一幅藝術品,是那忽如一夜春風來的靈感爆發(fā),是那嘈嘈切切錯雜彈的情思激蕩,是那直掛云帆濟滄海的壯志豪情,是那一覽天下眾山小的榮耀勝利,是不可以容忍碼農(nóng)用其慣有的形式固定、流程固定、毫無美感、毫無藝術的變幻和驚喜的直線思維解構。然而,在生產(chǎn)表情包的過程中,如果只是機械地把圖片導進PS --> 改文字--> 導出,那也太low了,所以還是把這些很low的機械化的重復動作交給程序來做吧。
之前一直以為圖像的自動處理,要靠JavaScript腳本控制PS或者AI;后來發(fā)現(xiàn)Python其實也可以做一些簡單的圖像處理,雖然可能比不上MATLAB強大。于是對于圖像處理,復雜的部分依然在PS或者AI中人工完成,簡單的處理就可以用Python程序完成。
在開工之前,先讓我們瞻仰膜拜一下表情包界里程碑式的人物,感謝他們大力推動了表情包在歷史潮流中的顯著進步,他們的英名將長期被人民大眾津津樂道,他們的音容笑貌將在人們的日常社交中經(jīng)久不衰,他們的卓越貢獻將永遠鐫刻于表情包史的豐碑上!
(如果表情可以收版權費的話,那就不用辛辛苦苦地去打球、拍戲、播音了……)
素材準備
這里我們以網(wǎng)絡上流傳最廣的金館長表情為中心,以萌萌噠的熊貓頭作為背景,底下加上文字就能構成一張表情包。
然后用PS處理一下圖片大小,模板大小設為250*250,表情裁剪一下白邊。
圖片疊加
第一步工作是把表情疊加到模板上,注意到我們的表情素材是白底而不是透明,所以位置要控制好,不然會遮蓋住輪廓。
from PIL importImage, ImageDraw, ImageFont
img = Image.open(".ackground.jpg")
jgz = Image.open(".jgz.jpg")
img.paste(jgz,(73,42))
img.show()
這樣就會看到合成的圖片了:
這張圖片下方還有一截留白,那是給我們最后一步添加文字用的。come on,魔性的笑容已經(jīng)呈現(xiàn),接下來就是最后一擊,are you OK?! 哦不,are you ready?!
文字疊加
盡管表情包的核心是表情,然而一行簡短而又震撼的文字往往能起到直擊靈魂的畫龍點睛的作用。
draw = ImageDraw.Draw(img)
ttfront = ImageFont.truetype('simhei.ttf', 24)
draw.text((32, 190),"我的內心毫無波動 甚至還想笑",fill=(0,0,0), font=ttfront)
img.show()
img.save(".Python生成的表情包.jpg")
這樣就生成了一張完整的表情包了:
其中draw.text()是往圖層里輸入文字,所以可以不斷執(zhí)行這條命令以在圖片里添加多層文字。
你還可以導入多張表情,以及多個文本臺詞,這樣就可以大規(guī)模批量自動生產(chǎn)表情包了……
問題升華
你以為到這里就結束了嗎?too young?。≌埻瑐兯伎歼@個問題:
表情包下留白的空間是有限的
中文和英文以及標點符號占據(jù)的空間不同
如果文本太長,就需要換行;可是如果行太多,圖片就放不下
因此,當你腦中突然閃現(xiàn)出一句既包含中文也有英文還有N多標點符號以增強語氣的臺詞時,怎么設計一個算法,用來尋找合適的字號大小,文本插入位置,文本在哪些地方換行,使文本能在有限空間居中展示,而且還要滿足一定的觀感呢?
算了,還是在這里結束吧……
于是,通過這篇嚴肅正經(jīng)的教程,我們學會了使用Python進行簡單圖像處理的方法,更get到一項實用的神技:自動生產(chǎn)表情包。
最重要的是,老夫經(jīng)常說的"信不信我分分鐘批量做你大堆的表情包",終于成為現(xiàn)實了……
-
javascript
+關注
關注
0文章
525瀏覽量
53951 -
python
+關注
關注
56文章
4808瀏覽量
85053
原文標題:Python自動生成表情包
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
如何制作QQ表情的安裝包?如何制作eip文件?
【大神課堂】深入淺出教你進行Python自動生成表情包
使用深度學習,制作“圖片+文字”型的表情包
Python自動生成表情包功能你會使用嗎?快來學習吧,從此斗圖無敵手!
用Python做幾個表情包
基于條件生成式對抗網(wǎng)絡的面部表情遷移模型
詳解python常規(guī)包與命名空間包
如何用Python自動套用模板批量生成PDF文檔
![如何用<b class='flag-5'>Python</b><b class='flag-5'>自動</b>套用模板批量<b class='flag-5'>生成</b>PDF文檔](https://file1.elecfans.com/web2/M00/AA/46/wKgZomUt90mAPInNAAF43E3gN6c095.jpg)
如何使用Python編寫腳本來自動發(fā)送郵件
曠視AI開源新突破:上傳照片即可生成表情包視頻!
![曠視AI開源新突破:上傳照片即可<b class='flag-5'>生成</b><b class='flag-5'>表情</b><b class='flag-5'>包</b>視頻!](https://file1.elecfans.com/web2/M00/FB/54/wKgZomaQp8CARJnFAAAUzJBUboU053.png)
評論