python入门后需要不断的练习才能加深印象,为了提升自己的python编码能力,特地找了一些python小例子进行练习,这个是原文地址:https://github.com/Yixiaohan/show-me-the-code所有的题目都在这里,下面开始第一题,duanduan手...
第 1 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。 类似于图中效果
一、问题分析:
1.通过分析题目可以得知,本题是在图片上面进行的操作,应该是两个图层,一个是QQ头像(固定的),另外一个是红色数字(可变的),需要用到python的PIL模块来处理图像问题。
2.安装PIL和pillow库:pip install PIL和pip install pillow
二、代码实例
#coding:utf-8
fromPILimportImage,ImageDraw,ImageFont
defaddNum(nub,filepath):
img = Image.open('C:\\Users\\admin\\Desktop\\qq.jpg','r')
width,height = img.size
fontSize = height /8
draw = ImageDraw.Draw(img)#确定字体格式和字体大小
ttFont = ImageFont.truetype('C:\\Users\\admin\\Desktop\\Arial.ttf',fontSize)
draw.text((width-fontSize,0),nub,(256,0,0),font=ttFont)#确定显示的 位置,数字,颜色,字体
deldraw
img.save('qq_addNub.jpg')
img.show()
if__name__ =='__main__':
addNum('8','qq.jpq')
三、代码分析
1.需要准备好一张图片
2.导入PIL模块的Image,ImageDraw,ImageFont 三个模块,Image主要负责打开一个图片,ImageDraw负责绘制图形,ImageFont负责字体类型、大小等
3.字体资源库www.fontke.com/font/list/1020,2138/
参考文章:http://blog.51cto.com/yucanghai/1715170