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 元组(Tuple)操作详解
Mar 11 Python
python中使用enumerate函数遍历元素实例
Jun 16 Python
Python开发常用的一些开源Package分享
Feb 14 Python
python django事务transaction源码分析详解
Mar 17 Python
Python读取txt某几列绘图的方法
Oct 14 Python
Python常见数据结构之栈与队列用法示例
Jan 14 Python
python引用(import)某个模块提示没找到对应模块的解决方法
Jan 19 Python
深入了解Python在HDA中的应用
Sep 05 Python
python实现的Iou与Giou代码
Jan 18 Python
Python实现手绘图效果实例分享
Jul 22 Python
5道关于python基础 while循环练习题
Nov 27 Python
python神经网络 使用Keras构建RNN训练
May 04 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
php5新改动之短标记启用方法
2008/09/11 PHP
PHP 判断变量类型实现代码
2009/10/23 PHP
PHP面向对象概念
2011/11/06 PHP
ThinkPHP中类的构造函数_construct()与_initialize()的区别详解
2017/03/13 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
PHP实现获取文件mime类型多种方法解析
2020/05/28 PHP
js prototype截取字符串函数
2010/04/01 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
jquery选择器使用详解
2014/04/08 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
2017/04/13 Javascript
推荐VSCode 上特别好用的 Vue 插件之vetur
2017/09/14 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
关于jquery中attr()和prop()方法的区别
2018/05/28 jQuery
微信小程序实现图片上传放大预览删除代码
2020/06/28 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
Python实现windows下模拟按键和鼠标点击的方法
2015/03/13 Python
使用Python判断质数(素数)的简单方法讲解
2016/05/05 Python
Python中文件的读取和写入操作
2018/04/27 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
2020/04/08 Python
浅谈python锁与死锁问题
2020/08/14 Python
python中yield的用法详解
2021/01/13 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
美国孩之宝玩具官网:Hasbro Pulse
2019/06/24 全球购物
如何执行一个shell程序
2012/11/23 面试题
大学生毕业自我鉴定范文
2013/09/19 职场文书
求职信的七个关键技巧
2014/02/05 职场文书
药学专业学生的自我评价分享
2014/02/06 职场文书
2014年乡镇植树节活动方案
2014/02/28 职场文书
幼儿园老师个人总结
2015/02/28 职场文书
给朋友的道歉短信
2015/05/12 职场文书
Mac电脑OS系统下安装Nginx的详细教程
2022/04/14 Servers