Python | 一键生成九宫格图片

网友投稿 875 2022-11-12

Python | 一键生成九宫格图片

Python | 一键生成九宫格图片

一键生成九宫格的图片喔~~~

一键生成九宫格图片

首先我们准备几张图片:

代码文件放在放置图片的地方,用软件打开:

打开新生成的文件夹:

打开对应图片的名称文件夹:

如果不想图片被分成9张,可以注释掉行尾有标记== # !!!==的代码即可:

以下是全部代码

import osfrom PIL import Imagedef wh_size(w, h): while w % 3 != 0: w += 1 while h % 3 != 0: h += 1 return w, hdef jgg_img(image, name): names = path + '\\Nine_GG' + '\\' + name # 图片名称 im = Image.open(image) # 打开图片 w, h = im.size # 获取图片宽高 width, height = wh_size(w, h) im = im.resize((width, height)) # 对图片宽高进行校准 tr = int(width/100*1.3) # 根据图片宽设置条纹宽度 img = Image.new('RGB', (width + 2 * tr, height + 2 * tr), color='white') # 新建图片底图 zi = os.path.splitext(names)[0] if not os.path.exists(zi): # 创建子文件夹 !!!1 os.mkdir(zi) # !!!2 num = 0 # !!!3 imgtype = os.path.splitext(name)[1] # !!!4 for i in range(3): for j in range(3): m = im.crop((int(width / 3) * j, int(height / 3) * i, int(width / 3) * (j + 1), int(height / 3) * (i + 1))) img.paste(m, (int(width / 3) * j+j*tr, int(height / 3) * i+i*tr)) num += 1 # !!!5 m.save(zi+'//'+str(num)+imgtype) # !!!6 img = img.resize((w, h)) # 调整图片大小 img.save(names) # 保存图片if __name__ == '__main__': path = os.getcwd() print("请确保当前路径下,有相应类型的图片文件存在!") if not os.path.exists(path + '\\Nine_GG'): # 判断文件夹是否创建 os.mkdir(path + '\\Nine_GG') for i in os.listdir(): # 循环遍历当前工作路径下的所有文件 if os.path.splitext(path + '\\' + i)[1] in ['.jpg', '.png', '.jpeg']: jgg_img(path + '\\' + i, i)

就到这里啦byebye O(∩_∩)O

箴言:因为这些东西是非常简单的。不要抱怨自己学不会,那是因为你没有足够用心。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python | P站壁纸爬取
下一篇:Python | OpenCV实现视频抓拍并发送至邮箱
相关文章

 发表评论

暂时没有评论,来抢沙发吧~