【Python学习笔记】-APP图标显示未读消息数目

以小米手机系统为例,当安装的某个APP有未读消息时,就会在该APP图标的右上角显示未读消息的数目。本文主要讲解如何用Python语言实现图标显示未读消息的数目。首先,还是要用到Python中PIL库,关于Linux下如何安装PIL库,请大家参考这篇博客:http://blog.csdn.net/kevin_zhai/article/details/47720721,里面有详细的安装过程。实现的原理很简单,直接用Image读取原始图标,然后将未读消息的数目插入到图标的右上角即可。

脚本代码如下:

#coding=utf-8
import random
import string
import sys
import math
from PIL import Image,ImageDraw,ImageFont,ImageFilter

#字体的位置,不同版本的系统会有不同
font_path = "/usr/share/X11/fonts/Type1/c0611bt_.pfb"

def gene_message_num(pic_path,message_num,fontcolor):
    '''
    @pic_path:原始头像图片的位置
    @message_num:未读消息的数目
    @fontcolor:显示消息数目的字体颜色
    '''
    image = Image.open(pic_path)
    size = image.size
    width,height = size #原始图片的宽和高
    font = ImageFont.truetype(font_path,30) #字体
    draw = ImageDraw.Draw(image)  #创建画笔
    text = str(message_num)
    font_width, font_height = font.getsize(text)
    draw.text((width - font_width, 0),text,\
            font=font,fill=fontcolor) #填充数字,位置在右上角
    image.save('1.jpg') #保存图片

if __name__ == "__main__":
    pic_path = "qq.jpg"
    message_num = 4
    fontcolor = (255,0,0)
    gene_message_num(pic_path,message_num,fontcolor)

结果展示:原始图标和脚本执行和的图标见下图,由于只是简单实现,结果并不是很美观。

                  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值