利用Python实现朋友圈中的九宫格图片效果


Posted in Python onSeptember 03, 2020

前言

大家应该经常在朋友圈看到有人发九宫格图片,其实质就是将一张图片切成九份,然后在微信中一起发这九张图即可。

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

  1. 打开要处理的图片
  2. 判断打开的图片是否为正方形
  3. 如果是正方形,就进行九等分,如果不是正方形,先用白色填充为正方形,再进行九等分
  4. 保存处理完的图片

主要实现代码如下:

# 填充新的 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实现朋友圈中的九宫格图片效果

效果图:

利用Python实现朋友圈中的九宫格图片效果

总结

到此这篇关于利用Python实现朋友圈中的九宫格图片效果的文章就介绍到这了,更多相关Python实现朋友圈九宫格图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python简单日志处理类分享
Feb 14 Python
基于python实现在excel中读取与生成随机数写入excel中
Jan 04 Python
python实现求最长回文子串长度
Jan 22 Python
python中abs&map&reduce简介
Feb 20 Python
python实现多人聊天室
Mar 31 Python
python数据处理 根据颜色对图片进行分类的方法
Dec 08 Python
Python实现对特定列表进行从小到大排序操作示例
Feb 11 Python
Python 进程操作之进程间通过队列共享数据,队列Queue简单示例
Oct 11 Python
python 定义类时,实现内部方法的互相调用
Dec 25 Python
python日期与时间戳的各种转换示例
Feb 12 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
Feb 25 Python
python中pycryto实现数据加密
Apr 29 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 #Python
Django实现微信小程序支付的示例代码
Sep 03 #Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
Sep 03 #Python
一篇文章搞懂python的转义字符及用法
Sep 03 #Python
容易被忽略的Python内置类型
Sep 03 #Python
python类共享变量操作
Sep 03 #Python
Python pip install之SSL异常处理操作
Sep 03 #Python
You might like
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
2011/12/14 PHP
PHP中利用sleep函数实现定时执行功能实现代码
2016/08/25 PHP
php 基础函数
2017/02/10 PHP
thinkphp5.1框架容器与依赖注入实例分析
2019/07/23 PHP
jQuery学习笔记之控制页面实现代码
2012/02/27 Javascript
js禁止页面刷新禁止用F5键刷新禁止右键的示例代码
2013/09/23 Javascript
JavaScript显示表单内元素数量的方法
2015/04/02 Javascript
无需 Flash 使用 jQuery 复制文字到剪贴板
2016/04/26 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
JS实现的tab切换选项卡效果示例
2017/02/28 Javascript
Javascript继承机制详解
2017/05/30 Javascript
轻松玩转BootstrapTable(后端使用SpringMVC+Hibernate)
2017/09/06 Javascript
详解Puppeteer 入门教程
2018/05/09 Javascript
一份超级详细的Vue-cli3.0使用教程【推荐】
2018/11/15 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
2019/10/09 Javascript
vue 获取url参数、get参数返回数组的操作
2020/11/12 Javascript
Vue中inheritAttrs的使用实例详解
2020/12/31 Vue.js
Python常用列表数据结构小结
2014/08/06 Python
Python的gevent框架的入门教程
2015/04/29 Python
用Python编写web API的教程
2015/04/30 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
Python实现的归并排序算法示例
2017/11/21 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
Python pycharm 同时加载多个项目的方法
2019/01/17 Python
python中selenium操作下拉滚动条的几种方法汇总
2019/07/14 Python
Python 通过截图匹配原图中的位置(opencv)实例
2019/08/27 Python
自适应线性神经网络Adaline的python实现详解
2019/09/30 Python
python二维键值数组生成转json的例子
2019/12/06 Python
css3打造一款漂亮的卡哇伊按钮
2013/03/20 HTML / CSS
在校生钳工实习自我鉴定
2013/09/19 职场文书
大学生实习期自我评价范文
2013/10/03 职场文书
党员培训思想汇报
2014/01/07 职场文书
一份创业计划书范文
2014/02/08 职场文书
团日活动总结模板
2014/06/25 职场文书
党的群众路线教育实践活动个人整改方案
2014/09/21 职场文书
Java用自带的Image IO给图片添加水印
2021/06/15 Java/Android