python生成九宫格图片


Posted in Python onNovember 19, 2018

本文实例为大家分享了Python九宫格图片生成的具体代码,供大家参考,具体内容如下

利用Image类将一张图片分割成9张,发朋友圈利器,打包成EXE后,长期使用。

效果大致是:

python生成九宫格图片python生成九宫格图片

库:pillow

源码:

# pengyouquanPicture.py
# 朋友圈九宫格图片制作
 
from PIL import Image
import sys
 
# 先将input image 填充为正方形
def fill_image(image):
 width, height = image.size
 #选取原图片长、宽中较大值作为新图片的九宫格半径
 new_image_length = width if width > height else height
 #生产新图片【白底】
 new_image = Image.new(image.mode,(new_image_length, new_image_length), color='white')
 #将原图粘贴在新图上,位置为居中
 if width > height:
 new_image.paste(image,(0, int((new_image_length-heigth) / 2)))
 else:
 new_image.paste(image,(int((new_image_length-width) / 2), 0))
 return new_image
 
# 将图片切割成九宫格
def cut_image(image):
 width, height = image.size
 #一行放3张图
 item_width = int(width / 3)
 box_list = []
 for i in range(0,3):
 for j in range(0,3):
 box = (j*item_width,i*item_width,(j+1)*item_width,(i+1)*item_width)
 box_list.append(box)
 image_list = [image.crop(box) for box in box_list]
 return image_list
#保存图片
def save_images(image_list):
 index = 1
 for image in image_list:
 image.save(str(index) + '.png', 'PNG')
 index += 1
 
if __name__ == '__main__':
 file_path = "1.jpg"
 image = Image.open(file_path)
 #image.show()
 image = fill_image(image)
 image_list = cut_image(image)
 save_images(image_list)

打包EXE:

pyinstaller.exe -F pengyouquanPicture.py -i "b8.ico"

python生成九宫格图片

把EXE文件和要分割的图片放在一个路径下,人后图片重命名为1.jpg ,直接执行exe 就可以得到9张照片啦。

PS:怎么打包成APP,后面再研究研究。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python enumerate遍历数组示例应用
Sep 06 Python
python使用os.listdir和os.walk获得文件的路径的方法
Dec 16 Python
基于循环神经网络(RNN)实现影评情感分类
Mar 26 Python
Python3导入CSV文件的实例(跟Python2有些许的不同)
Jun 22 Python
Python集中化管理平台Ansible介绍与YAML简介
Jun 12 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 Python
python读取多层嵌套文件夹中的文件实例
Feb 27 Python
浅谈Django中的QueryDict元素为数组的坑
Mar 31 Python
jupyter 导入csv文件方式
Apr 21 Python
python脚本定时发送邮件
Dec 22 Python
在Pycharm中安装Pandas库方法(简单易懂)
Feb 20 Python
Python打包exe时各种异常处理方案总结
May 18 Python
python实现简易动态时钟
Nov 19 #Python
python使用Turtle库绘制动态钟表
Nov 19 #Python
python+PyQT实现系统桌面时钟
Jun 16 #Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
Nov 18 #Python
Window环境下Scrapy开发环境搭建
Nov 18 #Python
Python中安装easy_install的方法
Nov 18 #Python
win7 x64系统中安装Scrapy的方法
Nov 18 #Python
You might like
PHP+Memcache实现wordpress访问总数统计(非插件)
2014/07/04 PHP
php中删除数组的第一个元素和最后一个元素的函数
2015/03/07 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
php开发微信支付获取用户地址
2015/10/04 PHP
Yii使用migrate命令执行sql语句的方法
2016/03/15 PHP
PHP工厂模式、单例模式与注册树模式实例详解
2019/06/03 PHP
php判断目录存在的简单方法
2019/09/26 PHP
php中关于换行的实例写法
2019/09/26 PHP
用javascript实现给出的盒子的序列是否可连为一矩型
2007/08/30 Javascript
jquery获取URL中参数解决中文乱码问题的两种方法
2013/12/18 Javascript
jquery实现input输入框实时输入触发事件代码
2014/01/28 Javascript
javascript表单验证大全
2015/08/12 Javascript
JS控制伪元素的方法汇总
2016/04/06 Javascript
JavaScript动态生成二维码图片
2016/04/20 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
jQuery树控件zTree使用方法详解(一)
2017/02/28 Javascript
在Vue项目中引入腾讯验证码服务的教程
2018/04/03 Javascript
微信小程序实现留言板功能
2018/11/02 Javascript
小程序封装wx.request请求并创建接口管理文件的实现
2019/04/29 Javascript
搭建一个nodejs脚手架的方法步骤
2019/06/28 NodeJs
解决vue.js提交数组时出现数组下标的问题
2019/11/05 Javascript
Vue脚手架编写试卷页面功能
2020/03/17 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
2020/08/03 Javascript
在VUE中使用lodash的debounce和throttle操作
2020/11/09 Javascript
Django中对数据查询结果进行排序的方法
2015/07/17 Python
python如何实现单链表的反转
2020/02/10 Python
Python将list元素转存为CSV文件的实现
2020/11/16 Python
HTML页面中添加Canvas标签示例
2015/01/01 HTML / CSS
竞选大队委员演讲稿
2014/04/28 职场文书
市级文明单位申报材料
2014/05/07 职场文书
中秋晚会策划方案
2014/06/12 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
2014年护士个人工作总结
2014/11/11 职场文书
建筑技术负责人岗位职责
2015/04/13 职场文书
Windows环境下实现批量执行Sql文件
2021/10/05 SQL Server
win10电脑双屏显示一个黑屏怎么办?win10电脑双屏显示一个黑屏解决方法
2022/07/15 数码科技