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 相关文章推荐
在Python中使用HTMLParser解析HTML的教程
Apr 29 Python
九步学会Python装饰器
May 09 Python
在Python中处理时间之clock()方法的使用
May 22 Python
Python中的super()方法使用简介
Aug 14 Python
详解如何为eclipse安装合适版本的python插件pydev
Nov 04 Python
python paramiko利用sftp上传目录到远程的实例
Jan 03 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 Python
pandas取出重复数据的方法
Jul 04 Python
Django app配置多个数据库代码实例
Dec 17 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
Jan 06 Python
python pyecharts 实现一个文件绘制多张图
May 13 Python
python 视频下载神器(you-get)的具体使用
Jan 06 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程序员最常犯的11个MySQL错误小结
2010/11/20 PHP
PHP获取文件扩展名的方法实例总结
2017/06/10 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
javascript 获取函数形参个数
2014/07/31 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
javascript实现仿IE顶部的可关闭警告条
2015/05/05 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
javascript限制文本框输入值类型的方法
2015/05/07 Javascript
Nodejs实现批量下载妹纸图
2015/05/28 NodeJs
JQuery自动触发事件的方法
2015/06/13 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
Javascript 严格模式use strict详解
2017/09/16 Javascript
Nodejs使用Mongodb存储与提供后端CRD服务详解
2018/09/04 NodeJs
python进程管理工具supervisor的安装与使用教程
2017/09/05 Python
Python之lambda匿名函数及map和filter的用法
2019/03/05 Python
TensorFlow实现简单的CNN的方法
2019/07/18 Python
Django RBAC权限管理设计过程详解
2019/08/06 Python
django2.2安装错误最全的解决方案(小结)
2019/09/24 Python
python的range和linspace使用详解
2019/11/27 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
使用Python操作MySQL的小技巧
2020/09/10 Python
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
高中同学聚会邀请函
2014/01/11 职场文书
在校生自我鉴定
2014/01/23 职场文书
中等生评语大全
2014/05/04 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
学校副校长四风对照检查材料整改措施
2014/09/25 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
加强作风建设工作总结
2014/10/23 职场文书
总经理岗位职责
2015/02/04 职场文书
遗失说明具结保证书
2015/02/26 职场文书
2015年度企业工作总结
2015/05/21 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
Pytest中skip和skipif的具体使用方法
2021/06/30 Python