利用python自带的pathlib库批量修改单个文件夹中的图片大小
文件结构:
└── [drwxr-xr-x] ./mydir
├── [drwxr-xr-x] ./mydir/sourceimg/
└── [drwxr-xr-x] ./mydir/changedimg/
└── [drwxr-xr-x] ./mydir/foo.py
cd mydir
python foo.py
from PIL import Image
from pathlib import Path
if __name__ == '__main__':
#源图片路径
file_path='./sourceimg/'
p = Path(file_path)
#修改大小后图片的存放路径
path_save = "./changedimg/"
for file in p.rglob('*.JPG'):
name = Path(path_save).joinpath(file.name)
im = Image.open(file)
#想要转换成的图片大小为1200*1600
#thumbnail()会进行等比例缩放,两个参数分别为最大宽/高范围,不一定能输出想要的尺寸。
#resize()会将图片进行变形拉扯,不是等比列的,但是可以输出正确的尺寸。
#im.thumbnail((1200,1600))
im=im.resize((1200,1600))
print(im.format, im.size, im.mode)
im.save(name,'JPEG')