您的位置:首页 > 编程语言 > Python开发

python图片批量处理缩放

2017-09-18 09:17 253 查看
你有一个目录,里面装了很多照片,把他们的尺寸编程都不大于iphone5分辨率的大小
思路:遍历给出目录下的图片,八大与iphone5分辨率的图片都进行缩放。
使用python的PIL库对图片进行处理,iphone5屏幕分辨率为640*1136,将大于该分辨率的图片按照一定比例缩放至合适大小并保存
代码如下:
#coding: utf-8import osfrom PIL import Image#源目录myPath = './ima/'#输出目录outPath = './dest/'def processImage(filesource, destsource, name, imgtype):'''filesource是存放待转换图片的目录destsource是存放转换后图片的目录name是文件名imgtype是文件类型'''imgtype = 'jpeg' if imgtype == '.jpg' else 'png'#打开图片im = Image.open(name)#缩放比例print(im.size[0])rate = max(im.size[0]/640.0 if im.size[0] > 640 else 0, im.size[1]/1136.0 if im.size[1] > 1136 else 0)if rate:im.thumbnail((im.size[0]/rate,im.size[1]/rate))im.save(destsource + name, imgtype)def run():#切换到源目录,遍历目录下所有图片os.chdir(myPath)for i in os.listdir(os.getcwd()):#检查后缀postfix = os.path.splitext(i)[1]print(postfix,i)if postfix == '.jpg' or postfix == '.png':processImage(myPath, outPath, i, postfix)if __name__ == '__main__':run()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python