Ross Wan's World!

Python, Ajax, PHP and Linux.

Python: 简单的图片批量缩放脚本

Posted by Ross Wan 于 2008/11/24

今天,应一个朋友的要求 —- 她苦于要手工一个一个地制作缩略图,在网上又找不到合适的工具,大部分都不是免费的。于是,我即时用 Python 写了个图片缩小脚本给她。功能很单薄,不过已经满足了她的需求。

脚本使用了 PIL 图像处理库。下面是脚本的代码:

#!bin/python
# coding=utf-8

import os
import Image

# 字义缩放百分比
rate = 40

# 缩略图命名,在后面加上
resizedAddone = '_resized'

# 支持格式
suportFormat = ['bmp', 'gif', 'jpg', 'png']

def process(arg, dirs, files):
    for file in files:
        fileExt = os.path.splitext(file)[1].lower()[1:]
        if fileExt in suportFormat:
            img = Image.open(file)
            img.thumbnail((img.size[0] * rate / 100, img.size[1] * rate / 100))
            img.save(os.path.basename(file) + resizedAddone + str(rate) + '.' + fileExt)

if __name__ == '__main__':
    os.path.walk('.', process, '123')

脚本的使用方法很简单:将脚本放在图片所在目录下,双击脚本就会自动执行。脚本只会对当前目录下的图片生成缩略图(不会递归子目录)。修改脚本中的 rate,可以设置其它缩放比率。

留下评论