Python切割图片成九宫格的示例代码
这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享。
原图如下:
我们想要利用这张图制作高逼格的九宫格朋友圈分享。
达到类似于这样的效果:
实现原理非常简单,那就是利用PIL库对原图不断画小区域然后切下来存储成新的小图片。
假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。
code snippet: #! /usr/local/bin/python3 # -*- coding: utf-8 -*- fromPILimportImage defcut_image(image): width, height = image.size item_width = width /3.0 item_height = height /3.0 box_list = [] forrowinrange(0,3): forcolinrange(0,3): box = (col * item_width, row * item_height,( col +1) * item_width,( row +1) * item_height) box_list.append( box ) image_list = [image.crop(box)forboxinbox_list] returnimage_list defsave_images(image_list): dirName ='output' ifFalse== os.path.exists( dirName ): os.makedirs( dirName ) index =1 forimageinimage_list: image.save(‘./output/python'+str(index) +'.png','PNG') index +=1 if__name__ =='__main__': image = Image.open("use.png") image_list = cut_image(image) save_images(image_list)
为了能在朋友圈中预览时看到所有图片的完整样子,建议保证自己的原始图片是正方形的,然后再运行这个脚本,在output中得到九张图片。最后,嗯,就可以去秀了!
总结
到此这篇关于Python切割图片成九宫格的文章就介绍到这了,更多相关Python切割图片 九宫格 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
用Python自动清理电脑内重复文件,只要10行代码(自动脚本)
这篇文章主要介绍了用Python自动清理电脑内重复文件,只要10行代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-01-01python定时检查启动某个exe程序适合检测exe是否挂了
定时检查启动某个exe程序这种情况下适合检测某个exe程序是否挂了,感兴趣的朋友可以了解下,希望本文对你有所帮助2013-01-01
最新评论