“裂开了,苦涩了,翻白眼”!我用Python画出微信新出的表情包

Python爬虫与数据挖掘

共 1526字,需浏览 4分钟

 ·

2020-11-22 17:35

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

钿头银篦击节碎,血色罗裙翻酒污。


11月18日,微信团队又推出了六张全新的小表情,可爱而有趣的表情瞬间火爆了大家的微信好友圈,也毫无疑问的登上了微博热搜榜的首位。各大明星纷纷效仿表情包,引发了一波全民的娱乐小高潮。


腾讯推出的新表情包含了“裂开”、“苦涩”、“翻白眼”等六个表情,小编熬夜用Python进行创作,今天就带领大家先画两个新表情尝个鲜,也加入到这场全民的娱乐中来。


01

翻白眼


对于程序的编写,我们采取的是Python内置的turtle库,大家可以看一下手机微信中的“翻白眼”表情包,可以看到,翻白眼呈现的是完全轴对称的样式,所以画起来也是非常方便的,我们首先来画出表情的脸和嘴,程序如下图所示:

程序中首先是画出了脸,并将脸部填充黄色,然后对于嘴,只需要改变画笔的颜色为棕色,然后跳转画笔到合适的位置,画一条横线即可,效果如下图所示。

完成了面部和嘴的绘制后,接下来就是比较复杂的眼睛的部分:

对于眼睛部分的绘制,虽然看起来比较复杂,但是我们仍旧可以将其进行分解绘制,对于眼白部分,我们可以将其看作是一个填充为白色的圆角矩形,而眼瞳部分,则可以认为是一个简单的黑色圆形。有了思路之后,程序就可以一步步的写出来了。
需要注意的是,这里的眼睛位于面部的位置,还有眼瞳位于眼白中的位置,都需要大家仔细的设计考虑。
上面的程序是针对于右眼的,而由于“翻白眼”是完全轴对称的,所以左眼的绘制只需要将右眼进行轴反转即可。
在程序上的体现,就是将右眼程序中,涉及到x轴的数值变为相反数,而y轴不变,画圆的话,就是将半径变为负值即可。
接下来,我们来看一下“翻白眼”的效果图吧


02

苦涩


接下来,我们来画一个“苦涩”的表情包,对于表情包的面部,和嘴部以及眼睛部分的绘制,程序与“翻白眼”部分的程序有很多的类似之处,但是不同的是苦涩表情包不再是一个轴对称的图形了,所以在绘制的时候,要格外注意好不同部位的位置,以免整体显得不协调。

对于苦涩的表情包,其基础的部分表情就是这样的,看上去并没有特别的新颖,空洞的眼神中透露出一丝丝的迷茫,我们接下来就是要给它加上“两行热泪”。程序如下所示:

上述程序是针对左眼眼泪的程序,可以看到,程序中最为关键的一点是找准眼泪相对于眼睛的位置,只有把握好相对位置才能画好图像,针对于右眼眼泪的程序,也是相同的道理,但是在绘制右眼眼泪时,要注意画笔的转向方向。我们来看一下苦涩表情包的效果图吧。

可以看到,表情包的确有“苦涩”的味道了,两行热泪流,数不尽的委屈。


03

总结


对于微信新表情包的绘制,可以帮助大家更好的学习turtle库,大家可以在源码的基础上,继续进行调整和提高,画出其他更复杂的新表情,和小伙伴们一起分享。

需要Python表情包源码的,可以在源公众号后台获取。

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

浏览 51
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报