Python写的切图脚本
2016-07-19 本文已影响269人
严谨风
自己写练手项目时随手写的一个Python切图脚本,可以把1125的图片按照0.66的比例压缩为750的图片,并且自动添加@2x和@3x的后缀。
通过Python3x的编译器运行代码后将图片所在文件夹路径输入执行后即可。记得提前给1125的图片取好名。
from PIL import Image, ImageDraw
import os
def get_newname_extend(filepath, postfix):
fileWholeName = filepath.split('/')[-1]
fileInfo = os.path.splitext(fileWholeName)
return fileInfo[0] + postfix + '.png'
def compress_img(imagepath):
img = Image.open(imagepath)
w, h = img.size
print('Original image size: %sx%s' % (w, h))
img.thumbnail((int(w * 0.66), int(h * 0.66)))
saveName = get_newname_extend(imagepath, '@2x')
# 取得上层目录
savedir = os.path.dirname(imagepath)
savepath = os.path.join(savedir, saveName)
img.save(savepath, 'png')
os.rename(imagepath.split('/')[-1], get_newname_extend(imagepath, '@3x'))
filepath = input('请输入要处理的图片所在的文件名:\n')
if filepath[-1] == ' ':
filepath = filepath[0: -1]
filelist = os.listdir(filepath)
# 改变当前所在目录
os.chdir(filepath)
imageList = []
for filename in filelist:
fileInfo = os.path.splitext(filename)
if fileInfo[1] == '.png':
abspath = os.path.abspath(filename)
compress_img(abspath)