Python切割图片成九宫格的示例代码


Posted in Python onMarch 10, 2020

这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享。

原图如下:

Python切割图片成九宫格的示例代码 

我们想要利用这张图制作高逼格的九宫格朋友圈分享。

达到类似于这样的效果:

Python切割图片成九宫格的示例代码 

实现原理非常简单,那就是利用PIL库对原图不断画小区域然后切下来存储成新的小图片。

假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。

Python切割图片成九宫格的示例代码 

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 相关文章推荐
Python实现向QQ群成员自动发邮件的方法
Nov 19 Python
pygame学习笔记(5):游戏精灵
Apr 15 Python
Python排序搜索基本算法之冒泡排序实例分析
Dec 09 Python
python自动12306抢票软件实现代码
Feb 24 Python
Python父目录、子目录的相互调用方法
Feb 16 Python
Django ORM 聚合查询和分组查询实现详解
Aug 09 Python
python实现将视频按帧读取到自定义目录
Dec 10 Python
推荐8款常用的Python GUI图形界面开发框架
Feb 23 Python
windows下Pycharm安装opencv的多种方法
Mar 05 Python
Python如何基于Tesseract实现识别文字功能
Jun 05 Python
如何在 Matplotlib 中更改绘图背景的实现
Nov 26 Python
Python实现Word文档转换Markdown的示例
Dec 22 Python
pycharm设置python文件模板信息过程图解
Mar 10 #Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
Mar 10 #Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
Mar 10 #Python
Python在终端通过pip安装好包以后在Pycharm中依然无法使用的问题(三种解决方案)
Mar 10 #Python
python标准库OS模块详解
Mar 10 #Python
python标准库OS模块函数列表与实例全解
Mar 10 #Python
python:批量统计xml中各类目标的数量案例
Mar 10 #Python
You might like
用HTML/JS/PHP方式实现页面延时跳转的简单实例
2016/07/18 PHP
PHP编程求最大公约数与最小公倍数的方法示例
2017/05/29 PHP
javascript使用activex控件的代码
2011/01/27 Javascript
将光标定位于输入框最右侧实现代码
2012/12/04 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
2013/05/15 Javascript
一分钟理解js闭包
2016/05/04 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
javascript使用btoa和atob来进行Base64转码和解码
2017/03/20 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
Vue2.0 vue-source jsonp 跨域请求
2017/08/04 Javascript
AngularJS实现的锚点楼层跳转功能示例
2018/01/02 Javascript
360doc网站不登录就无法复制内容的解决方法
2018/01/27 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
2018/04/22 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
H5实现手机拍照和选择上传功能
2019/12/18 Javascript
浅谈vue.watch的触发条件是什么
2020/11/07 Javascript
如何使用 JavaScript 操作浏览器历史记录 API
2020/11/24 Javascript
JavaScript 防盗链的原理以及破解方法
2020/12/29 Javascript
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
python利用beautifulSoup实现爬虫
2014/09/29 Python
python插入数据到列表的方法
2015/04/30 Python
Python sklearn KFold 生成交叉验证数据集的方法
2018/12/11 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
2019/07/23 Python
python将字母转化为数字实例方法
2019/10/04 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
如何理解python对象
2020/06/21 Python
html5 web本地存储将取代我们的cookie
2012/12/26 HTML / CSS
LA MER海蓝之谜美国官网:传奇面霜
2016/08/27 全球购物
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
理工类毕业自我鉴定
2014/02/20 职场文书
中班下学期幼儿评语
2014/12/30 职场文书
圆明园纪录片观后感
2015/06/03 职场文书
会计做账心得体会
2016/01/22 职场文书