Python小程序,你有TA的一条未读消息

Python小程序系列开始上线!

Python作为一个功能强大的编程语言,能用到的场景十分之多。这个系列旨在抓住奇思妙想,和严谨的代码结合,碰撞出火花。

作为开篇,这一次我们来给你的微信头像加上一条“未读消息”:

第一步就是准备好你食材,不对,是你的头像,我们拿下面的图来做实验:

还有不能忘了红色的圈圈logo:

Python小程序要做的就是apple+pen=applepen的操作。把红色圈圈插入到微信头像上面,并且加上未读消息数字。

第二步就是上代码,这次我们用到的是一个叫PIL(Python Image Library)的模块,它是是python下的图像处理模块,支持多种格式,并提供强大的图形与图像处理功能:

我们使用了Image, ImageFont, 以及ImageDraw三个库。

代码讲解:

首先我们给两张图片命好名字,一个是微信头像,一个是红色圈圈logo。有了名字之后,使用open函数分别打开两张图片。先处理图二红色圈圈,把图片中的白色部分变得透明,这样好把红色圈圈插入到头像中,不然白色的部分会掩盖头像内容。这里我们用了自己定义的transparent函数处理,具体函数见代码讲解底部内容。

paste函数负责把透明化后的红色圈圈粘贴到头像图中,(40,0)是粘贴位置,大家到时候可以自己调整。接下来就是在红色圈圈中写未读消息的数字了,我们使用draw.text函数来完成这个操作。单引号里面的数字就是你要填写的数字,这里我们设置成1。前面的(198,3)是数字写入的位置,也是可以自主调节的。最好我们将完成好的图片用save函数存储起来

变透明的函数:

好了,展示完代码,相信大家已经基本搞明白了。如果想要亲自尝试代码的,可以点文末的左下角的阅读原文,去我的github下载程序。

接下来就是见证奇迹的时刻:

哈哈,效果还是不错的。

我们再试一个新的头像:

看效果:

需要注意的,新的头像需要调整红色圈圈和数字的位置。一个可以改进的地方是针对不同的头像不要自己调节位置,在未来的版本我们争取实现。

原文发布于微信公众号 - 浊酒清味(gh_39aead19f756)

原文发表时间:2019-08-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券