python制作朋友圈九宫格图片


Posted in Python onNovember 03, 2019

本文实例为大家分享了python朋友圈九宫格图片的具体制作代码,供大家参考,具体内容如下

将一张图片,切分成九宫格的样式:

原图:

python制作朋友圈九宫格图片

# -*- coding: UTF-8 -*-
from PIL import Image
import sys
import os
 
__author__ = 'kandy'
 
#当前文件所在文件夹
DIR_NAME = os.path.dirname( os.path.abspath(__file__) )
 
#填充新的image
def fill_image(image):
 width, height = image.size
 print('width:{%d}, height:{%d}' % (width, height))
 
 _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)
 print('_width:{%d}' % _width)
 
 box_list = []
 
 # (left, top, right, bottom)
 for i in range(0, 3):
  for j in range(0, 3):
   print('i:{%d}, j:{%d}' % (i, j))
   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): 
 index = 1 
 #创建result文件夹
 res_dir = os.path.join(DIR_NAME, 'result')
 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 
 print('图片保存完毕!')
 
 
if __name__ == '__main__': 
 file_path = os.path.join(DIR_NAME, '123.jpg')
 image = Image.open(file_path)
 #image.show()
 image = fill_image(image)
 #
 image_list = cut_image(image)
 #
 save_images(image_list)
 print('程序结束!')

切图后,拿去发朋友圈吧:

python制作朋友圈九宫格图片

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

Python 相关文章推荐
如何搜索查找并解决Django相关的问题
Jun 30 Python
python实现网站的模拟登录
Jan 04 Python
Pycharm学习教程(3) 代码运行调试
May 03 Python
关于Django外键赋值问题详解
Aug 13 Python
python数据抓取分析的示例代码(python + mongodb)
Dec 25 Python
学习Python3 Dlib19.7进行人脸面部识别
Jan 24 Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
Python利用FFT进行简单滤波的实现
Feb 26 Python
浅谈matplotlib 绘制梯度下降求解过程
Jul 12 Python
Python如何将装饰器定义为类
Jul 30 Python
pytorch MSELoss计算平均的实现方法
May 12 Python
python使用yield压平嵌套字典的超简单方法
Nov 02 #Python
基于python实现从尾到头打印链表
Nov 02 #Python
pandas 空数据处理方法详解
Nov 02 #Python
python pyinstaller打包exe报错的解决方法
Nov 02 #Python
python自动生成model文件过程详解
Nov 02 #Python
python__name__原理及用法详解
Nov 02 #Python
简单了解python中的f.b.u.r函数
Nov 02 #Python
You might like
一个经典实用的PHP图像处理类分享
2014/11/18 PHP
php使用指定编码导出mysql数据到csv文件的方法
2015/03/31 PHP
PHP简单实现正则匹配省市区的方法
2018/04/13 PHP
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
2010/08/27 Javascript
js关闭模态窗口刷新父页面或跳转页面
2012/12/13 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
jquery的总体架构分析及实现示例详解
2014/11/08 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
在windows上用nodejs搭建静态文件服务器的简单方法
2016/08/11 NodeJs
AngularJS 单元测试(二)详解
2016/09/21 Javascript
javascript表达式和运算符详解
2017/02/07 Javascript
Node 自动化部署的方法
2017/10/17 Javascript
vue实现select下拉显示隐藏功能
2019/09/30 Javascript
js中的面向对象之对象常见创建方法详解
2019/12/16 Javascript
微信小程序实现吸顶特效
2020/01/08 Javascript
编程语言Python的发展史
2014/09/26 Python
Python学习入门之区块链详解
2017/07/25 Python
django开发教程之利用缓存文件进行页面缓存的方法
2017/11/10 Python
Flask框架配置与调试操作示例
2018/07/23 Python
浅析python内置模块collections
2019/11/15 Python
Python try except异常捕获机制原理解析
2020/04/18 Python
Python JSON常用编解码方法代码实例
2020/09/05 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
2021/02/20 Python
美国最大的城市服装和运动鞋零售商:Jimmy Jazz
2016/11/19 全球购物
介绍Ibatis的核心类
2013/11/18 面试题
C#公司笔试题
2014/03/28 面试题
实习期自我鉴定
2013/10/11 职场文书
求职信模版
2013/11/30 职场文书
公司年会策划方案
2014/05/17 职场文书
工会优秀工作者事迹
2014/08/17 职场文书
清洁员岗位职责
2015/02/15 职场文书
2016年度基层党建工作公开承诺书
2016/03/25 职场文书
创业计划书之个人工作室
2019/08/22 职场文书
Jupyter Notebook 如何修改字体和大小以及更改字体样式
2021/06/03 Python
分享python函数常见关键字
2022/04/26 Python
pycharm无法安装cv2模块问题
2022/05/20 Python