Python 利用pillow库实现将图片切割成可发朋友圈的九宫格图片

先来看下原图与最终效果图

原图.jpg

九宫格.png

接下来看实现

  1. 首先安装Pillow库

终端运行命令:

pip3 install pillow

2 实现思路

读取图片 -> 将图片填充为正方形 -> 切割成九宫格 -> 保存图片 -> 完成

3 代码实现

1、导入依赖库

from PIL import Image

2、填充图片为正方形

def fill_image(image):

    width, height = image.size

    # 选取长和宽中较大值作为新图片的边长
    new_image_length = width if width > height else height

    # 生成新图片[白底],底色可配置其他颜色
    new_image = Image.new(image.mode, (new_image_length, new_image_length), color='white')

    # 将之前的图片input image 粘贴在新图上,居中
    if width > height: # 原图宽大于高,则填充图片的竖直维度  #(x,y)二元组表示粘贴上图相对下图的起始位置,是个坐标点
        new_image.paste(image, (0, int((new_image_length - height) / 2)))
    else:
        new_image.paste(image, (int((new_image_length - width) / 2), 0))

    return new_image

3、切割图片

def cut_image(image):

    width, height = image.size

    item_width =int(width /3) # 因为朋友圈一行放3张图

    box_list = []

    for i in range(0, 3):

        for j in range(0, 3):

            box = (j*item_width, i*item_width, (j+1)*item_width, (i+1)*item_width) # (left, top, right, bottom)

            box_list.append(box)

    image_list = [image.crop(box) for box in box_list]

    return image_list

4、保存图片

def save_images(image_list):

    index = 1

    for image in  image_list:

        image.save(str(index) + '.png', 'PNG')

        index += 1

5、 使用示例

if __name__ == '__main__':
    file_path = "1.jpg"  # 把目标图片 input image 放到代码所处的文件夹里

    image = Image.open(file_path)
    image = fill_image(image)

    image_list = cut_image(image)

    save_images(image_list)

** 到此,完成了全部功能,可以拿去实验了 **

参考资料
用Python发一个高逼格的朋友圈【附代码】


源码下载地址
源码


跑步 + 素食 + 编码

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,020评论 3 119
  • 软件正在吞噬世界 “软件正在吞噬世界。”——马克 · 安德森 在新一轮的信息技术革命中,我们已经见证,软件对社会生...
    lordk阅读 292评论 0 0
  • 这雨 随着风 吹向西 吹向东 吹向四面八方 我的心 亦如这雨 随风飘向远方
    是蔬菜呀阅读 198评论 0 0
  • MboX环境配置: 1.npm i mobx mobx-react --save //引入mobx2.npm i...
    亦晴工作室阅读 14,466评论 3 9
  • 安静的雨声,伴着吵闹的雷鸣,从昏暗的窗外,慢慢传入了,未曾休憩的耳边。 遮蔽了,昏聩的世界,淹没了,所有的困倦, ...
    文风起武阅读 723评论 6 14