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列表操作实例
Jan 14 Python
举例讲解Python中字典的合并值相加与异或对比
Jun 04 Python
Python单向链表和双向链表原理与用法实例详解
Aug 31 Python
Mac下Anaconda的安装和使用教程
Nov 29 Python
python 的 openpyxl模块 读取 Excel文件的方法
Sep 09 Python
numpy ndarray 取出满足特定条件的某些行实例
Dec 05 Python
基于python图像处理API的使用示例
Apr 03 Python
Python 如何操作 SQLite 数据库
Aug 17 Python
python pymysql库的常用操作
Oct 16 Python
python基于pygame实现飞机大作战小游戏
Nov 19 Python
Django 权限管理(permissions)与用户组(group)详解
Nov 30 Python
用python爬虫批量下载pdf的实现
Dec 01 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的array_diff()函数在处理大数组时的效率问题
2011/11/27 PHP
php引用传值实例详解学习
2013/11/06 PHP
php基于curl扩展制作跨平台的restfule 接口
2015/05/11 PHP
详解PHP5.6.30与Apache2.4.x配置
2017/06/02 PHP
php+redis实现消息队列功能示例
2019/09/19 PHP
原创javascript小游戏实现代码
2010/08/19 Javascript
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
JavaScript表格常用操作方法汇总
2015/04/15 Javascript
带有定位当前位置的百度地图前端web api实例代码
2016/06/21 Javascript
JS中用try catch对代码运行的性能影响分析
2016/12/26 Javascript
js 颜色选择插件
2017/01/23 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
2017/03/06 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
JavaScript switch语句使用方法简介
2019/12/30 Javascript
[04:51]TI10典藏宝瓶Ⅱ外观视频展示
2020/08/15 DOTA
使用Python的Zato发送AMQP消息的教程
2015/04/16 Python
Python3遍历目录树实现方法
2015/05/22 Python
Python3 模块、包调用&路径详解
2017/10/25 Python
Python动态生成多维数组的方法示例
2018/08/09 Python
在Python中给Nan值更改为0的方法
2018/10/30 Python
Python简单获取二维数组行列数的方法示例
2018/12/21 Python
PyQt弹出式对话框的常用方法及标准按钮类型
2019/02/27 Python
python自动化工具之pywinauto实例详解
2019/08/26 Python
Python连接字符串过程详解
2020/01/06 Python
开发中都用到了那些设计模式?用在什么场合?
2014/08/21 面试题
机械专业应届生求职信
2013/09/21 职场文书
毕业生自我鉴定
2013/11/05 职场文书
精彩的大学生自我评价
2013/11/17 职场文书
档案接收函
2014/01/13 职场文书
文明礼貌演讲稿
2014/05/12 职场文书
博士生求职信
2014/07/06 职场文书
食堂厨师岗位职责
2014/08/25 职场文书
早上好问候语大全
2015/11/10 职场文书
CSS3实现的文字弹出特效
2021/04/16 HTML / CSS
新手必备Python开发环境搭建教程
2021/05/28 Python
Vue.js中v-bind指令的用法介绍
2022/03/13 Vue.js