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 json模块使用实例
Apr 11 Python
python 调用win32pai 操作cmd的方法
May 28 Python
浅谈scrapy 的基本命令介绍
Jun 13 Python
Python 比较两个数组的元素的异同方法
Aug 17 Python
python自动发邮件库yagmail的示例代码
Feb 23 Python
对python调用RPC接口的实例详解
Jan 03 Python
对Python3 pyc 文件的使用详解
Feb 16 Python
使用Python制作表情包实现换脸功能
Jul 19 Python
Django实现发送邮件找回密码功能
Aug 12 Python
python的time模块和datetime模块实例解析
Nov 29 Python
Django admin 实现search_fields精确查询实例
Mar 30 Python
django xadmin action兼容自定义model权限教程
Mar 30 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
thinkphp命名空间用法实例详解
2015/12/30 PHP
php如何计算两坐标点之间的距离
2018/12/29 PHP
JavaScript 学习初步 入门教程
2010/03/25 Javascript
常用一些Javascript判断函数
2012/08/14 Javascript
解决Extjs4中form表单提交后无法进入success函数问题
2013/11/26 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
JavaScript中常见获取元素的方法汇总
2015/03/04 Javascript
在浏览器中打开或关闭JavaScript的方法
2015/06/03 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
微信小程序 加载 app-service.js 错误解决方法
2016/10/12 Javascript
理解JavaScript原型链
2016/10/25 Javascript
微信小程序 图片边框解决方法
2017/01/16 Javascript
Vue.js原理分析之observer模块详解
2017/02/17 Javascript
微信禁止下拉查看URL的处理方法
2017/09/28 Javascript
Angular搜索 过滤 批量删除 添加 表单验证功能集锦(实例代码)
2017/10/25 Javascript
关于Mac下安装nodejs、npm和cnpm的教程
2018/04/11 NodeJs
vue 权限认证token的实现方法
2018/07/17 Javascript
Vue项目总结之webpack常规打包优化方案
2019/06/06 Javascript
Vuex modules模式下mapState/mapMutations的操作实例
2019/10/17 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
python机器学习案例教程——K最近邻算法的实现
2017/12/28 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
call在Python中改进数列的实例讲解
2020/12/09 Python
CSS3弹性盒模型flex box快速入门心得(必看篇)
2016/05/24 HTML / CSS
New Balance比利时官方网站:购买鞋子和服装
2021/01/15 全球购物
文案策划求职信
2014/04/14 职场文书
老师对学生的评语
2014/04/18 职场文书
二手车交易协议书标准版
2014/11/16 职场文书
民主评议党员个人总结
2015/02/13 职场文书
2016大学先进团支部事迹材料
2016/03/01 职场文书
动漫APP软件排行榜前十名,半次元上榜,第一款由腾讯公司推出
2022/03/18 杂记