Python切割图片成九宫格的示例代码

作者:麦叶 时间:2023-07-10 07:00:57 

这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享。

原图如下:

Python切割图片成九宫格的示例代码 

我们想要利用这张图制作高逼格的九宫格朋友圈分享。

达到类似于这样的效果:

Python切割图片成九宫格的示例代码 

实现原理非常简单,那就是利用PIL库对原图不断画小区域然后切下来存储成新的小图片。

假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。

Python切割图片成九宫格的示例代码 


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
  • asp之家 网络编程 m.aspxhome.com