python生成表情包斗图,试问天下谁不服

我们坚持认为,一张优秀的表情包,应该是一幅艺术品,是那忽如一夜春风来的灵感爆发,是那嘈嘈切切错杂弹的情思激荡,是那直挂云帆济沧海的壮志豪情,是那一览天下众山小的荣耀胜利,是不可以容忍码农用其惯有的形式固定、流程固定、毫无美感、毫无艺术的变幻和惊喜的直线思维解构。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个我的python交流群:813542856,不管你是小白还是大牛欢迎入驻 ,讨论技术, 大家一起交流学习成长!

作为一个数据分析师,应该信奉一句话—-“一图胜千言”。不过这里要说的并不是数据可视化,而是一款全民向的产品形态—-表情包!!!!

表情包不仅仅是一种符号,更是一种文化;是促进社交乃至社会发展的动力之一,就像懒。

素材准备

这里我们以网络上流传最广的 金馆长表情为中心,以萌萌哒的熊猫头作为背景,底下加上文字就能构成一张表情包。

《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》

然后用PS处理一下图片大小,模板大小设为250*250,表情裁剪一下白边。

图片叠加

第一步工作是把表情叠加到模板上,注意到我们的表情素材是白底而不是透明,所以位置要控制好,不然会遮盖住轮廓。

《python生成表情包斗图,试问天下谁不服》

这样就会看到合成的图片了:

《python生成表情包斗图,试问天下谁不服》

这张图片下方还有一截留白,那是给我们最后一步添加文字用的。come on,魔性的笑容已经呈现,接下来就是最后一击,are you OK?! 哦不,are you ready?!

文字叠加

尽管表情包的核心是表情,然而一行简短而又震撼的文字往往能起到直击灵魂的画龙点睛的作用。

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")

这样就生成了一张完整的表情包了:

《python生成表情包斗图,试问天下谁不服》

其中draw.text() 是往图层里输入文字,所以可以不断执行这条命令以在图片里添加多层文字。

你还可以导入多张表情,以及多个文本台词,这样就可以大规模批量自动生产表情包了……

问题升华

《python生成表情包斗图,试问天下谁不服》

《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》

Python 生成字符画

跑在 python3 下,可以通过输入图片来生成字符画。大致原理在注释中有提到。具体的像素和符号转化关系,我没有去深入了解。

《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》

运行命令:

python3 draw.py --width 60 --height 30 test.png

这是原图:

《python生成表情包斗图,试问天下谁不服》

以下是效果图:

《python生成表情包斗图,试问天下谁不服》
《python生成表情包斗图,试问天下谁不服》

    原文作者:编程新视野
    原文地址: https://www.jianshu.com/p/2c5ce63d9e75
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞