python pillow
https://www.cnblogs.com/morethink/p/8419151.html#%E7%9B%B4%E6%8E%A5%E6%8F%92%E5%85%A5%E6%8E%92%E5%BA%8F
https://www.cnblogs.com/brookshi/p/8414881.html
https://www.cnblogs.com/zhouyubo/p/8412840.html
https://www.cnblogs.com/cr330326/p/8419899.html
https://www.cnblogs.com/xybaby/p/8403461.html
http://www.cnblogs.com/xybaby/p/7954610.html
http://www.cnblogs.com/xybaby/p/6406191.html
http://www.cnblogs.com/xybaby/p/6343285.html
https://www.cnblogs.com/liuyun1995/p/8416340.html
https://www.cnblogs.com/AdaminXie/p/8379749.html
https://www.cnblogs.com/JJJ1990/p/8384386.html
https://www.cnblogs.com/zhenlingcn/p/8386214.html
http://www.cnblogs.com/zhenlingcn/p/8337788.html
TutorialDemo001.py
# coding: utf-8 from PIL import Image
import os, sys Int_Len = 5 def getPicInfo(pic):
im = Image.open(pic)
print("--------------------")
print("file name:\t" + im.filename)
print("format:\t\t" + im.format)
print("size:\t\t" + str(im.size))
print("mode:\t\t" + im.mode)
return im def convertFormat(pic, format):
pathNew = getNewFormatPath(pic, format)
try:
im = Image.open(pic)
im.save(pathNew, format)
getPicInfo(pathNew)
return pathNew
except IOError:
print("Cannot create new Format %s for %s." % format, pic)
return None def convertThumbnails(pic, rate=1, format='JPEG'):
pathNew = getThumbnailsPath(pic, r"thumbnails", format)
if (pic != pathNew):
try:
im = Image.open(pic)
size = (int(im.size[0] * rate), int(im.size[1] * rate))
im.thumbnail(size)
im.save(pathNew, format)
getPicInfo(pathNew)
return pathNew
except IOError:
print("Cannot create thumbnail for ", pic)
return None def getNewFormatPath(pic, format):
pathSegs = os.path.splitext(pic)
count = 1
while True:
pathNew = pathSegs[0] + r"-" + str(count).zfill(Int_Len) + "." + format.lower()
if os.path.exists(pathNew):
count += 1
pathNew = pathSegs[0] + r"-" + str(count).zfill(Int_Len) + "." + format.lower()
else:
return pathNew def getThumbnailsPath(pic, suffix, format):
pathSegs = os.path.splitext(pic)
count = 1
while True:
pathNew = pathSegs[0] + r"-" + str(count).zfill(Int_Len) + r"-" + suffix + "." + format.lower()
if os.path.exists(pathNew):
count += 1
pathNew = pathSegs[0] + r"-" + str(count).zfill(Int_Len) + r"-" + suffix + "." + format.lower()
else:
return pathNew if __name__ == "__main__":
pic1 = r"res/MIT-001.jpg"
pic2 = r"res/MIT-002.jpg" # im = getPicInfo(pic1)
# r,g,b = im.split()
# r.rotate(45).show()
# g.resize((100,200)).show()
# b.show()
# im.convert("L").convert("RGB").show() # convertThumbnails(pic1, 0.5) path = convertFormat(pic1, 'PNG')
print(os.path.abspath(path))
python pillow的更多相关文章
- python Pillow 图片处理模块,好强大有没有
python Pillow 图片处理模块,好强大有没有 Pillow 需要给 python 另外安装 第一个用法:https://www.cnblogs.com/ibingshan/p/1105739 ...
- [ller必读] LoveLive! 必备技能之 Python Pillow 自动处理截图
起因 喜欢的歌,静静地听:喜欢的人,远远的看.30天前,就是3月14号,我情不自禁地走近了<LoveLive!学院偶像祭>,这是我的第一张卡片(见下图).第二天也就是3月15日,海未生日了 ...
- python pillow模块用法
pillow Pillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库.pillow可以说已经取代了PIL,将其封装成python的库(pip即可安装),且支持pytho ...
- Python pillow库安装报错
报错信息: D:\pythontest\duanxinhongzha>pip3 install pillowCollecting pillow Could not find a version ...
- Python pillow库
由于pillow库功能很强大本文章主要介绍pillow的Image模块 关于Pillow与PIL PIL(Python Imaging Library)是Python一个强大方便的图像处理库,名气也比 ...
- 基于Python Pillow库生成随机验证码
from PIL import Image from PIL import ImageDraw from PIL import ImageFont import random class ValidC ...
- python pillow 处理图片
demo1 #打开图片,并随机添加一些椒盐噪声 from PIL import Image import numpy as np import matplotlib.pyplot as plt img ...
- python pillow 绘制图片
demo1 #coding=utf- from PIL import Image img = Image.,))###创建一个5*5的图片 pixTuple = (,,,)###三个参数依次为R,G, ...
- 使用python拼接多张图片.二三事
前几日在博客上看到一篇“使用python拼接多张图片”的Blog[具体是能将的图片名字必须是形如xx_1.png ... xx_100.png或者xx_001.png ... xx_100.png,拼 ...
随机推荐
- python学习目录(转载)
python基础篇 python 基础知识 python 初始python python 字符编码 python 类型及变量 python 字符串详解 python 列表详解 ...
- 机器学习:K-Means/K-Means++
- linux测试环境搭建步骤
一.建用户 1.新建用户root用户登录,执行命令:useradd + 用户名 -m -d + 指定路径如:新建用户liuwq ,指定路径/home/ios命令:useradd liuwq -m -d ...
- 【python基础】迭代器和生成器函数
1.迭代器协议: 1.迭代器协议是指:对象必须提供一个 __next__() 方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代(只能往后走不能往前退) ...
- SQL优化之踩过的坑【一】
正看资料看的过瘾,突然收到报警,说服务器负载太高,好吧,登录服务器看看,我擦嘞,还能不能愉快的玩耍了?下面是当时的负载情况 看见mysql使用cpu已经到了2000,io没有等待.说明应该没有大的临时 ...
- linux 修改文件内容 vi命令
vi编辑器是所有Unix及Linux系统下标准的编辑器,介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它 ...
- hibernate 主键生成方式
1)assigned主键由外部程序负责生成,无需Hibernate参与. 2)hilo通过hi/lo 算法实现的主键生成机制,需要额外的数据库表保存主键生成历史状态. 3)seqhilo与hilo 类 ...
- 011-ThreadFactory线程工厂
一.源码分析 ThreadFactory是一个线程工厂.用来创建线程.这里为什么要使用线程工厂呢?其实就是为了统一在创建线程时设置一些参数,如是否守护线程.线程一些特性等,如优先级.通过这个Tread ...
- wx:Textctrl
import wx class Mywin(wx.Frame): def __init__(self, parent, title): super(Mywin, self).__init__(pare ...
- test TSS Work about
activity01 activity02 FamilyNew workTest