Python 练习册,每天一个小程序----------000 图片右上角加上红色的数字

时间:2022-01-05 03:58:21
# -*- coding:utf-8 -*-
#第 0000 题:右上角加上红色的数字,类似于微信未读信息数量那种提示效果
#python 3.5.2

from PIL import Image, ImageDraw, ImageFont

def add_num(filepath, num = 1):
    image = Image.open('aaa.jpg')
    size = image.size
    fontsize = size[1]/4
    
    #ImageFont模块定义了相同名称的类,即ImageFont类。
    #这个类的实例存储bitmap字体,用于ImageDraw类的text()方法。
    myfont = ImageFont.truetype('Futura.ttf',fontsize)
    #TrueType既可以作打印字体,又可以用作屏幕显示;由于它是由指令对字形进行描述,因此它与分辨率无关,
    #输出时总是按照打印机的分辨率输出。无论放大或缩小,字符总是光滑的,不会有锯齿出现。

    ImageDraw.Draw(image).text((2*fontsize, 0),str(num),font = myfont, fill = 'red')
    image.save('aaa.jpg')
    image.show()