技巧 | Python制作朋友圈炫酷九宫格图片

简介: 技巧 | Python制作朋友圈炫酷九宫格图片

大家好,我是欧K。

本期给大家分享如何使用python制作朋友圈九宫格图片,希望对你有所帮助。

1. 准备工作

1.1 Pillow 安装

两种安装方法:

# 方法1
pip install Pillow
# 方法2
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ Pillow

1.2 导入模块

from PIL import Image

2. PIL函数

2.1 打开图像文件

Image.open(fp, mode='r')

它是惰性操作。该函数读取文件头,直到尝试处理数据才调用load方法强制加载实际的图像数据,可以使用字符串(表示文件名)或file对象作为文件参数。

2.2 打开图像文件

Image.new(mode, size, color=0)

Image.new(mode, size, color=0)

参数:

  • mode:图片模式。
  • size:一个二元组,包含(宽度,高度)像素。
  • color:图像颜色,默认黑色。


2.3 复杂图像

Image.copy()

将原始图像内容粘贴到图像中,仍保留原始内容。

2.4 粘贴图像

Image.paste(im, box=None, mask=None)

box 可以是二元数组,给定 box 的左上角位置;或者,四元数组( left, upper, right, lower) 像素坐标;或者,None,等价于 ((0, 0))。


2.5 保存文件

Image.save(fp, format=None, **params)

fp 为文件名. 可以指定存储图片的质量(jpeg压缩率),不同的压缩率保存的文件大小不同.

img.save(fp, "JPEG", quality=95),quality 值越高,保存的文件越大


3. 绘制九宫格图

3.1 创建底图

# 创建新图片
def create_new_image(image):
    width, height = image.size
    if width > height:
        new_image = Image.new(image.mode, (width, width), color='white')
        new_image.paste(image, (0, int((width - height) / 2)))
    else:
        new_image = Image.new(image.mode, (height, height), color='white')
        new_image.paste(image, (int((height - width) / 2), 0))
    return new_image


3.2 生成子图

# 生成9个子图
def get_9_images(image):
    width, height = image.size
    new_image_width = int(width / 3)
    boxs = []
    for i in range(0, 3):
        for j in range(0, 3):
            box = (j * new_image_width, i * new_image_width, (j + 1) * new_image_width, (i + 1) * new_image_width)
            boxs.append(box)
    images = [image.crop(box) for box in boxs]
    return images


3.3 保存

# 保存图片
def save_images(images, file_path):
    if not os.path.exists(file_path):
        os.mkdir(file_path)
    for index,image in enumerate(images):
        new_image = os.path.join(file_path, str(index) + '.jpg')
        image.save(new_image)

效果:完。

END


以上就是本期为大家整理的全部内容了,赶快练习起来吧,喜欢的朋友可以点赞、点在看也可以分享到朋友圈让更多人知道哦

相关文章
|
4天前
|
存储 Python
python实现图片与视频转换:将视频保存为图片,将批量图片保存为视频
python实现图片与视频转换:将视频保存为图片,将批量图片保存为视频
|
4天前
|
机器学习/深度学习 算法 数据可视化
【深度学习实战】基于深度学习的图片风格快速迁移软件(Python源码+UI界面)
【深度学习实战】基于深度学习的图片风格快速迁移软件(Python源码+UI界面)
|
4天前
|
Python
图片相似度比较_python
图片相似度比较_python
6 1
|
13天前
|
数据采集 JSON API
自动化Reddit图片收集:Python爬虫技巧
自动化Reddit图片收集:Python爬虫技巧
|
27天前
|
开发工具 Python
【分享Python代码】图片转化为素描画
【分享Python代码】图片转化为素描画
33 2
|
28天前
|
Python 计算机视觉
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试
|
28天前
|
XML 数据格式 Python
python挑出训练集里图片对应的xml文件,方便统计标签框的类别与数目_python 统计voc2007xml中某一类别框个数(1)
python挑出训练集里图片对应的xml文件,方便统计标签框的类别与数目_python 统计voc2007xml中某一类别框个数(1)
|
1月前
|
数据安全/隐私保护 Python
python 图片打水印 透明图片合并
python 图片打水印 透明图片合并
18 1
|
1月前
|
存储 索引 Python
python图片九宫格图片处理
本篇文章介绍了一个Python项目的实现,项目能够处理图片并将其组合成九宫格或四宫格,同时还具备音乐播放功能,对于初学者来说是一个可以进行实战学习的初级项目。
|
1月前
|
存储 计算机视觉 Python
python实现Gif图片的字符画
这是一个Python实战项目,旨在将GIF动态图转化为ASCII字符动画。项目适合有一定Python基础的学习者,主要使用os、imageio、PIL库。首先,代码导入所需库,然后通过PIL创建空白图片并添加文本。接着,程序读取GIF,拆分帧并转为字符画,存入“tmp”目录。同时,代码提供了清空“tmp”目录、将灰度值映射为ASCII字符、将图片处理成字符画的函数。此外,还有创建新画布和合成GIF的步骤。主函数调用这些模块,最终将ASCII字符画合并成GIF。项目展示了将动态图像转换为ASCII艺术的过程。