zoukankan      html  css  js  c++  java
  • py库: PIL 、pillow(图像处理)

    https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320027235877860c87af5544f25a8deeb55141d60c5000  廖雪峰

    由于PIL仅支持到Python 2.7,加上年久失修,于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用Pillow。

    pip install pillow


    图片操作

    #把图片缩小到二分之一
    from PIL import Image, ImageFilter
    im = Image.open('1.jpg')
    w, h = im.size
    print('原图片尺寸: %sx%s' % (w, h))
    # 缩放到50%:
    im.thumbnail((w//2, h//2))
    # 把缩放后的图像用jpeg格式保存:
    im.save('2.jpg', 'jpeg')
    #要详细了解PIL的强大功能,请请参考Pillow官方文档: https://pillow.readthedocs.org/

    图片操作2:  在已有图片上生成1个汉字,和6位数字。颜色随机  2017-10-20

    http://pillow.readthedocs.io/en/latest/  PIL库  Pillow — Pillow (PIL Fork) 4.4.0.dev0 documentation

    # -*- coding: utf-8 -*-
    # coding=utf-8
    
    from PIL import Image, ImageFont, ImageDraw
    import random
    
    str1 = '赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨'   #通过随机数,取一个汉字
    str1Length = len(str1)
    idx = random.choice(range(str1Length))
    char1 = str1[idx:idx + 1]
    
    msgNum = str((random.randint(1, 999999)))  # 生成6位随机数
    im = Image.open('2.jpg')  # 载入图片
    w, h = im.size  # 获取图片宽度和高度
    wdraw = 0.3 * w  # 坐标
    hdraw = 0.4 * h
    
    fron = ImageFont.truetype('msyhbd.ttf', 100)  # 字体微软雅黑,字体大小
    draw = ImageDraw.Draw(im)  # 创建图像
    draw.text((wdraw, hdraw), char1, font=fron,
              fill=(random.choice(range(255)), random.choice(range(255)), random.choice(range(255))))
    draw.text((wdraw, hdraw + 100), msgNum, font=fron,
              fill=(random.choice(range(255)), random.choice(range(255)), random.choice(range(255))))
    # draw.text((wdraw, hdraw), msgNum, font=fron, fill=(255, 33, 33))
    # fill:定义颜色,可以为数字格式也可以直接指定英文如:fill="red"
    im.save('2_mm.png', 'png')

    ...

  • 相关阅读:
    [小程序]支付宝小程序GET请求数据并展示列表界面
    [小程序] 支付宝小程序使用list时提示元素不存在
    [GO] gin 框架gorm下使用logrus记录sql语句
    [Git] 强制使用远端仓库代码覆盖本地代码
    [PHP]外观/门面/Facade模式-结构型设计模式
    ansible-playbook根据shell判断状态
    ansible Unarchive
    find文件获得绝对文件路径绝对值
    Tomcat和JVM的性能调优总结
    Jenkins内置环境变量的使用
  • 原文地址:https://www.cnblogs.com/qq21270/p/7704976.html
Copyright © 2011-2022 走看看