Python如何生成一个九宫格图片?
发布时间:2022-04-07 15:41:21 所属栏目:语言 来源:互联网
导读:相信不少朋友在刷朋友圈时,都会刷到下图所示的九宫格图片,感觉很酷炫的样子,那么这是怎么样做的呢?下面就给就大家分享一下Python生成这样一个九宫格图片的代码。 一、图片基本操作 今天我们会使用到三个操作,分别是读取图片、保存图片和截取图片。下面
相信不少朋友在刷朋友圈时,都会刷到下图所示的九宫格图片,感觉很酷炫的样子,那么这是怎么样做的呢?下面就给就大家分享一下Python生成这样一个九宫格图片的代码。 一、图片基本操作 今天我们会使用到三个操作,分别是读取图片、保存图片和截取图片。下面我们分别来看看。 2.1 读取图片 在Pillow中,我们最常用的就是Image子模块。其中读取图片的操作就是通过Image.open函数来实现。Image.open函数会返回一个图片对象,我们来看看具体的代码: 2.2 截取图片 在Image对象中,有一个crop方法,可以用于剪切图片。它接收一个box参数,表示要截取的区域。参数是一个元组,元素内容分别是左上角x,y坐标,右下角x,y坐标。图片中的坐标系是以左上角为原点的,如图: 假如我们需要截取图片如下区域: 那我们的参数应该如下: img.crop((x1, y1, x2, y2)) 我们来看看具体的代码: from PIL import Image # 读取图片 img = Image.open('lbxx.jpg') # 截取图片的(0, 0, 300, 300)区域 box = img.crop((0, 0, 300, 300)) # 显示截取的区域 box.show() 2.3 保存图片 保存图片的操作非常简单,我们只需要调用img的save方法即可,我们直接看代码: from PIL import Image img = Image.open('lbxx.jpg') box = img.crop((0, 0, 300, 300)) # 保存图片 box.save('1.jpg') 我们直接调用save方法,传入保存的路径即可。 二、生成九宫格图片 知道了上面的操作,下面的操作无非就是截取图片的九个区域,然后保存即可。具体代码如下: # 循环裁剪图片 for i in range(3): for j in range(3): # 裁剪图片并保存 crop = im.crop((start_x, start_y, start_x+width, start_y+height)) crop.save('imgs/' + str(im_name) + '.jpg') # 将左上角坐标的 x 轴向右移动 start_x += width im_name += 1 (编辑:南通站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |