`# -- coding: utf-8 -- import os from PIL import Image import glob
DIR = 'E:/tmp/答疑整理/temp/imgs/' class Compress_Picture(object): def init(self): # 图片格式,可以换成.bpm等 self.file = '.jpeg'
图片压缩批处理
def compressImage(self): #用它可以查找符合特定规则的文件路径名。 for filename in glob.glob('%s%s%s' % (DIR, '*', self.file)): # print(filename) # 打开原图片压缩 sImg = Image.open(filename) w, h = sImg.size print(w, h) #Image.NEAREST :低质量Image.BILINEAR:双线性Image.BICUBIC :三次样条插值Image.ANTIALIAS:高质量 dImg = sImg.resize((1560, 2080), Image.ANTIALIAS) # 设置压缩尺寸和选项,注意尺寸要用括号
# 如果不存在目的目录则创建一个 %s是%DIR
comdic = "%scompress/" %DIR
if not os.path.exists(comdic):
#用于递归创建目录
os.makedirs(comdic)
# 压缩图片路径名称
f1 = filename.split('/')
f1 = f1[-1].split('\\')
f2 = f1[-1].split('.')
f2 = '%s%s1%s'%(comdic, f2[0], self.file)
# print(f2)
dImg.save(f2) # save这个函数后面可以加压缩编码选项JPEG之类的
print("%s compressed succeeded" %f1[-1])
if name == "main": obj = Compress_Picture() obj.compressImage() `