Python切割图片成九宫格的示例代码
作者:麦叶 时间:2023-07-10 07:00:57
这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享。
原图如下:
我们想要利用这张图制作高逼格的九宫格朋友圈分享。
达到类似于这样的效果:
实现原理非常简单,那就是利用PIL库对原图不断画小区域然后切下来存储成新的小图片。
假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。
code snippet:
#! /usr/local/bin/python3
# -*- coding: utf-8 -*-
fromPILimportImage
defcut_image(image):
width, height = image.size
item_width = width /3.0
item_height = height /3.0
box_list = []
forrowinrange(0,3):
forcolinrange(0,3):
box = (col * item_width, row * item_height,( col +1) * item_width,( row +1) * item_height)
box_list.append( box )
image_list = [image.crop(box)forboxinbox_list]
returnimage_list
defsave_images(image_list):
dirName ='output'
ifFalse== os.path.exists( dirName ):
os.makedirs( dirName )
index =1
forimageinimage_list:
image.save(‘./output/python'+str(index) +'.png','PNG')
index +=1
if__name__ =='__main__':
image = Image.open("use.png")
image_list = cut_image(image)
save_images(image_list)
为了能在朋友圈中预览时看到所有图片的完整样子,建议保证自己的原始图片是正方形的,然后再运行这个脚本,在output中得到九张图片。最后,嗯,就可以去秀了!
来源:https://www.maiyewang.com/archives/83847
标签:Python,切割,图片,九宫格
0
投稿
猜你喜欢
PyTorch 使用torchvision进行图片数据增广
2023-06-19 23:09:10
MYSQL必知必会读书笔记第五章之排序检索数据
2024-01-27 10:08:33
meta标签之详解
2008-01-13 18:48:00
Golang指针的操作以及常用的指针函数
2024-02-08 11:46:49
GO项目配置与使用的方法步骤
2024-05-22 17:45:57
PHP基于phpqrcode类生成二维码的方法示例详解
2023-07-15 22:57:52
Vue插槽原理与用法详解
2024-05-09 10:43:09
Python生成随机数的方法详解(最全)
2023-05-04 12:36:08
Python的Django框架中的Context使用
2023-09-19 15:29:24
使用ACCESS做网络版程序的四种解决方案
2009-01-14 16:22:00
如何在python中执行另一个py文件
2022-04-09 14:57:51
python使用JSON模块进行数据处理(编码解码)
2024-01-01 21:52:42
解决出现SoapFault (looks like we got no XML document)的问题
2023-11-19 04:21:01
用生成器来改写直接返回列表的函数方法
2022-04-24 15:36:08
Python使用re模块验证危险字符
2023-10-29 13:46:55
Python编程图形库之Pillow使用方法讲解
2022-04-07 06:10:57
opencv python 图像轮廓/检测轮廓/绘制轮廓的方法
2022-08-13 06:54:59
一个效果写的HashTable代码
2024-04-10 13:57:49
Python 如何实现访问者模式
2021-08-10 20:49:53
ASP FCKeditor在线编辑器使用方法
2023-01-12 23:15:04