利用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中使用PIL库实现图片高斯模糊实例
Feb 08 Python
Python中最常用的操作列表的几种方法归纳
Apr 24 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
python版大富翁源代码分享
Nov 19 Python
windows下numpy下载与安装图文教程
Apr 02 Python
python反编译学习之字节码详解
May 19 Python
python常用函数与用法示例
Jul 02 Python
python运用pygame库实现双人弹球小游戏
Nov 25 Python
基于pytorch的lstm参数使用详解
Jan 14 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
Apr 14 Python
Python如何定义有可选参数的元类
Jul 31 Python
Python+Opencv实现把图片、视频互转的示例
Dec 17 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上传文件中文文件名乱码的解决方法
2013/11/01 PHP
PHP小技巧之函数重载
2014/06/02 PHP
PHP防止表单重复提交的几种常用方法汇总
2014/08/19 PHP
分享PHP守护进程类
2015/12/30 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
PHP的全局错误处理详解
2016/04/25 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2007/02/15 Javascript
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
JavaScript setTimeout和setInterval的使用方法 说明
2010/03/25 Javascript
Javascript 面向对象(三)接口代码
2012/05/23 Javascript
jquery 之 $().hover(func1, funct2)使用方法
2012/06/14 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
2014/06/19 Javascript
七个不允许错过的jQuery小技巧
2015/12/21 Javascript
checkbox批量选中,获取选中项的值的简单实例
2016/06/28 Javascript
bootstrap confirmation按钮提示组件使用详解
2017/08/22 Javascript
vue中如何实现pdf文件预览的方法
2018/07/12 Javascript
Angular5集成eventbus的示例代码
2018/07/19 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
JavaScript交换变量的常用方法小结【4种方法】
2020/05/07 Javascript
python实现的守护进程(Daemon)用法实例
2015/06/02 Python
小小聊天室Python代码实现
2016/08/17 Python
python内置数据类型之列表操作
2018/11/12 Python
django一对多模型以及如何在前端实现详解
2019/07/24 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
利用Python实现最小二乘法与梯度下降算法
2021/02/21 Python
python线程优先级队列知识点总结
2021/02/28 Python
本科生的职业生涯规划范文
2014/01/09 职场文书
书香校园活动方案
2014/02/28 职场文书
读书月活动方案
2014/05/22 职场文书
法制宣传标语集锦
2014/06/25 职场文书
家具商场的活动方案
2014/08/16 职场文书
党委班子对照检查材料
2014/08/19 职场文书
元旦趣味活动方案
2014/08/22 职场文书
七年级地理教学计划
2015/01/22 职场文书
公司欠款证明
2015/06/24 职场文书
一文带你探究MySQL中的NULL
2021/11/11 MySQL