首页 > 编程知识 正文

Python 图片填充

时间:2023-11-19 21:13:34 阅读:289067 作者:BCEK

本文将从以下几个方面对Python图片填充进行详细阐述。

一、Pillow库介绍

Pillow是Python成像库之一,它支持实现许多常见的图片操作,如裁剪、旋转、缩放、调整亮度等。

首先,需要安装Pillow库。使用pip命令即可进行安装。

pip install Pillow

二、图片填充方法1

在进行图片填充前,先导入Pillow库中的Image模块。假设想将一张图片填充至400x400像素大小,可以使用“Image.new()”创建一张大小为400x400的空白图片,再使用“Image.paste()”方法将原图粘贴在新图的中心位置即可。

from PIL import Image

old_image = Image.open("old_image.png")  # 打开原图
new_image = Image.new('RGBA', (400, 400), (255, 255, 255, 255))  # 新建一张400x400的空白图片
new_image.paste(old_image, ((400 - old_image.width) // 2, (400 - old_image.height) // 2))  # 将原图粘贴在新图的中心位置
new_image.save("new_image.png")  # 保存新图

三、图片填充方法2

除了上述的方法外,还可以使用“ImageOps.pad()”方法进行图片填充。该方法会在图片周围填充空白区域,返回一张指定大小的新图片,并且原图会保持在填充后图片的正中央位置。

from PIL import ImageOps

old_image = Image.open("old_image.png")  # 打开原图
new_image = ImageOps.pad(old_image, (400, 400), (255, 255, 255, 255))  # 在原图周围填充空白区域,返回一张大小为400x400的新图片
new_image.save("new_image.png")  # 保存新图

四、图片填充方法3

如果要填充的图片大小与目标大小不一致,可先进行调整大小,再进行填充操作。

from PIL import ImageOps

old_image = Image.open("old_image.png")  # 打开原图
resized_image = old_image.resize((300, 300))  # 调整原图大小
new_image = ImageOps.pad(resized_image, (400, 400), (255, 255, 255, 255))  # 在调整后的原图周围填充空白区域,返回一张大小为400x400的新图片
new_image.save("new_image.png")  # 保存新图

五、总结

本文介绍了三种常见的Python图片填充方法,包括使用“Image.new()”和“Image.paste()”方法、使用“ImageOps.pad()”方法以及结合调整大小操作进行图片填充。笔者在使用过程中发现,第一种方法实现起来比较简单,但是需要进行坐标计算;第二种方法可以直接填充,但是填充后图片大小固定且周围都是尽量保证指定颜色的空白;而第三种方法可以结合其他图片操作,如调整大小、缩放等,更加灵活。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。