Pillow中文文档:
安装:pip install pillow
操作图像:
#!/usr/bin/env python3# _*_ coding utf-8 _*___author__ = 'nxz'from PIL import Image, ImageFilterfrom time import sleep# 打开一个jpg图像文件im = Image.open('test.jpg')w, h = im.size #print('图片的宽:%s,和高:%s' % (w, h))# 图片缩放im.thumbnail((w // 2, h // 2))w, h = im.sizeprint(w, h)# 缩放之后的图片重新保存im.save('thumbnail.jpg', 'jpeg')# 其他功能:切片、旋转、滤镜、输出文字、调色板# 模糊效果im2 = im.filter(ImageFilter.BLUR)im2.save('blur.jpg','jpeg')
截屏:
from PIL import ImageGrabfrom time import sleepm = int(input("请输入想截屏多少次:"))n = 1while n <= m: sleep(0.02) im = ImageGrab.grab() local = (r'%s.jpg' % (n)) im.save(local, 'jpeg') n = n + 1
转换文件到JPEG:
'''将指定路径下的图片后缀改为 “.jpg” 格式'''from PIL import Imageimport os, sysfor infile in sys.argv[1:]: f, e = os.path.splitext(infile) outfile = f + '.jpg' if infile != outfile: try: Image.open(infile).save(outfile) except Exception as exc: print(exc)
GIF动图:
"""GIf动图"""from PIL import Imageim = Image.open('test.jpg')images = []images.append(Image.open('blur.png'))images.append(Image.open('test.jpg'))im.save('gif.gif', save_all=True, append_image=images, loop=1, duration=1, comment=b'aaaabbb')
几何变换:
#简单的集合变换out = im.resize((128, 128))#旋转图像out = im.transpose(Image.FLIP_LEFT_RIGHT) #翻转out = im.transpose(Image.FLIP_TOP_BOTTOM)out = im.transpose(Image.ROTATE_90)out = im.transpose(Image.ROTATE_180) #旋转180°out = im.transpose(Image.ROTATE_270) #旋转270°