python简单实现9宫格图片实例


Posted in Python onSeptember 03, 2020

在日常生活中我们经常在朋友圈看到有人发九宫格图片,其实质就是将一张图片切成九份,然后在微信中一起发这九张图。

那么我们如何自己动手实现呢?

说到切图Python 就可以实现,主要用到的 Python 库为 Pillow,安装使用 pip install pillow 即可,切图的主要步骤如下:

1、打开要处理的图片

2、判断打开的图片是否为正方形,如果是正方形,就进行九等分,如果不是正方形,先用白色填充为正方形,再进行九等分

3、保存处理完的图片

主要实现代码如下:

# 填充新的 image
def fill_image(image):
    width, height = image.size
    _length = width
    if height > width:
        _length = height
    new_image = Image.new(image.mode, (_length, _length), color='white')
    if width > height:
        new_image.paste(image, (0, int((_length - height) / 2)))
    else:
        new_image.paste(image, (int((_length - width) / 2), 0))
    return new_image

# 裁剪 image
def cut_image(image):
    width, height = image.size
    _width = int(width / 3)
    box_list = []
    for i in range(0, 3):
        for j in range(0, 3):
            box = (j * _width, i * _width, (j + 1) * _width, (i + 1) * _width)
            box_list.append(box)
            image_list = [image.crop(box) for box in box_list]
    return image_list

# 将 image 列表的里面的图片保存
def save_images(image_list, res_dir):
    index = 1
    if not os.path.exists(res_dir):
        os.mkdir(res_dir)
    for image in image_list:
        new_name = os.path.join(res_dir, str(index) + '.png')
        image.save(new_name, 'PNG')
        index += 1

我们来看一下实现效果:

python简单实现9宫格图片实例

以上就是python简单实现9宫格图片实例的详细内容,更多关于python实现朋友圈中的九宫格图片的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python实现自动添加脚本头信息的示例代码
Sep 02 Python
python实现对指定输入的字符串逆序输出的6种方法
Apr 26 Python
python使用turtle库绘制树
Jun 25 Python
python感知机实现代码
Jan 18 Python
在Python中使用Neo4j的方法
Mar 14 Python
详解用python写一个抽奖程序
May 10 Python
python 利用jinja2模板生成html代码实例
Oct 10 Python
Python接口测试数据库封装实现原理
May 09 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
Jul 02 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
Nov 17 Python
Python深度学习之Pytorch初步使用
May 20 Python
django使用graphql的实例
Sep 02 #Python
django数据模型中null和blank的区别说明
Sep 02 #Python
sqlalchemy实现时间列自动更新教程
Sep 02 #Python
解决Python 函数声明先后顺序出现的问题
Sep 02 #Python
解决Python3.8运行tornado项目报NotImplementedError错误
Sep 02 #Python
详解python with 上下文管理器
Sep 02 #Python
Python 的 __str__ 和 __repr__ 方法对比
Sep 02 #Python
You might like
PHP数据库万能引擎类adodb配置使用以及实例集锦
2014/06/12 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
javascript 密码强度验证规则、打分、验证(给出前端代码,后端代码可根据强度规则翻译)
2010/05/18 Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
2012/10/11 Javascript
在JS数组特定索引处指定位置插入元素的技巧
2014/08/24 Javascript
实现placeholder效果的方案汇总
2015/06/11 Javascript
轻松使用jQuery双向select控件Bootstrap Dual Listbox
2015/12/13 Javascript
JavaScript实现复制文章自动添加版权
2016/08/02 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
EasyUI在Panel上动态添加LinkButton按钮
2017/08/11 Javascript
JavaScript实现区块链
2018/03/14 Javascript
JavaScript创建对象方法实例小结
2018/09/03 Javascript
JS实现可切换图片的幻灯切换效果示例
2019/05/24 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
layer.alert回调函数执行关闭弹窗的实例
2019/09/11 Javascript
vue.js实现简单的计算器功能
2020/02/22 Javascript
基于JavaScript实现十五拼图代码实例
2020/04/26 Javascript
JS实现简单贪吃蛇小游戏
2020/10/28 Javascript
python中字典(Dictionary)用法实例详解
2015/05/30 Python
Python读写unicode文件的方法
2015/07/10 Python
Python自动生产表情包
2017/03/17 Python
python利用socketserver实现并发套接字功能
2018/01/26 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
Python 脚本的三种执行方式小结
2019/12/21 Python
使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)
2020/10/12 Python
美国女性服饰销售网站:Nasty Gal(坏女孩)
2016/07/26 全球购物
美国男士内衣品牌:Tommy John
2017/12/22 全球购物
ORACLE十问
2015/04/20 面试题
出纳员岗位职责
2014/03/13 职场文书
巾帼文明岗申报材料
2014/05/01 职场文书
机动车交通事故协议书
2015/01/29 职场文书
2015年度酒店客房部工作总结
2015/05/25 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
观看安全警示教育片心得体会
2016/01/15 职场文书
Nginx如何获取自定义请求header头和URL参数详解
2022/07/23 Servers