一.需求:在头像加上消息通知图标
二.实现
1.导入PIL 包并导入相关的模块呢
from PIL import Image, ImageFont, ImageDraw
遇到问题:因为使用的是python3 直接导入PIL的安装PIL模块的时候报错,使用pip install PIL 安装PIL报错:
Collecting PIL
Could not find a version that satisfies the requirement PIL (from versions: )
No matching distribution found for PIL
原因:PIL只支持python2.x ,所有使用python3 时候报错
解决方法:PIL 已经有一个分支项目,安装分支项目pillow同样支持PIL模块
pip install Pillow
2.PIL使用
1>导入需要修改的图片
```
image = Image.open('./images/icon.png')
```
2>设置字体的字体和大小
```
# font = ImageFont.truetype(字体, 字体大小)
font = ImageFont.truetype('arial.ttf', 20)
```
3.调用ImageDraw.Draw() 方法处理图片
```
# 调用Draw方法,传入导入图片对象
draw = ImageDraw.Draw(image)
draw.text((65, 0), '5', fill=(255, 10, 10), font=font)
# draw.text方法是用来在图片上加上文字
# draw.text((x, y), '5', fill=(255, 10, 10), font=font)
# (x,y)是一个元组用来表示生成的位置,x表x轴的位置,y表示在y轴的位置
# 需要注意的是:坐标轴的原点是图片的左上角
# '5' 表示的是需要在图片上写入的文字
# fill=(255, 10, 10) 表示的是RGB的色值
# font=font 表示字体,传入定义好的字体
```
` 4.保存图片
# './images/change.png''./images/'保存的图片路径,../change.png需要保存的图片名
# 'png' 图片保存的格式
image.save('./images/change.png', 'png')