老规矩,直接上代码:
# -*- coding:utf-8 -*-
import os
try:
from PIL import Image
except:
os.system("pip install pillow")
from PIL import Image
file_dir_L = []
# 获取当前目录下的所有文件,递归获取。
for root, dirs, files in os.walk("./"):
for file in files:
# 筛选需要的文件,这里只筛选了“png,jpg,jpeg”,还有其他格式的请在下行代码内添加
if os.path.splitext(file)[1] in [".png", ".jpg", ".jpeg"]:
file_dir_L.append(os.path.join(file))
print("需要处理的文件:", file_dir_L)
# for循环去处理图片
for file_name in file_dir_L:
img = Image.open(file_name)
# 获取图片的大小,然后在原始图片大小的基础上,加上6个像素,进行画布创建。
# 然后背景色设置,背景色就是边框的颜色,0就是黑色,255是红色,只要在这个区间内都是可以的。
new_pic = Image.new('RGB', (img.size[0] + 6, img.size[1] + 6), color=0)
# 然后就是复制图片,把原始图片复制到刚创建的画布上去,
# 然后设置起始位置,因为要上下左右对其,所以就是从上面写的数值的一半开始
new_pic.paste(img, (3, 3))
# 最后就是输出文件,为了易于区分和避免重名,所以统一在后面增加特定字符。
new_pic.save(file_name + '-out.png')
print("处理完成")