图片处理

  • 说明:通常对图片的操作有:缩放、旋转、翻转、裁剪、滤镜、画图等。

  • 扩展库:PIL,只支持py2,需要安装pillow库之后才能支持py3

  • 安装:pip install pillow

  • 预备知识:

    • 颜色:R(红)、G(绿)、B(蓝)、A(透明)

    • 坐标:(0, 0)坐标在图片的左上角,向右表示水平的正方向,向下表示垂直的正方向。

  • 验证码:

    from PIL import Image, ImageFont, ImageDraw, ImageFilter
    from random import randint
    ​
    # 产生随机的颜色
    def rand_color():
        return (randint(128, 255), randint(128, 255), randint(128, 255))
    ​
    # 创建图片
    img = Image.new('RGB', (200, 50), 'white')
    ​
    # 创建字体
    font = ImageFont.truetype('xdxwz.ttf', 30)
    ​
    # 创建画笔
    draw = ImageDraw.Draw(img)
    ​
    # 写字
    for i in range(4):
        draw.text((i*50+15, 0), 'A', font=font, fill='black')
    ​
    # 画干扰点
    for i in range(100*50):
        x = randint(0, 200)
        y = randint(0, 50)
        draw.point((x, y), fill=rand_color())
    ​
    # 使用滤镜,会生成新的图片
    img = img.filter(ImageFilter.GaussianBlur)
    # 展示图片,会调出系统的图片查看器
    img.show()
原文地址:https://www.cnblogs.com/542684416-qq/p/9807244.html