pillow常见操作汇总

不积跬步无以至千里 / 2023-08-28 / 原文

  • pil读取图像

PIL(Python Imaging Library)是一个用于图像处理的Python库。您可以使用它来读取、处理和操作图像文件。下面是一个示例代码,展示了如何使用PIL库来读取图像:

from PIL import Image

# 打开图像文件
image_path = "path_to_your_image.jpg"  # 替换为您的图像文件路径
image = Image.open(image_path)

# 显示图像信息
print("图像格式:", image.format)
print("图像大小:", image.size)
print("图像模式:", image.mode)

# 显示图像
image.show()

在这个示例中,您需要将 path_to_your_image.jpg 替换为您实际的图像文件路径。代码首先使用 Image.open() 函数来打开图像文件,然后可以使用各种属性和方法来访问图像的信息,如格式、大小和模式。最后,使用 image.show() 来显示图像。

  • pil读取png图片并对png图片透明区域填充颜色,转为rgb格式

您可以使用 Python 的 PIL(Python Imaging Library)库来读取 PNG 图像,并对图像的透明区域进行颜色填充。以下是一个示例代码,展示了如何实现这个操作:

from PIL import Image

# 打开 PNG 图像
image = Image.open("example.png")

# 检查图像是否具有 alpha 通道(透明通道)
if image.mode in ("RGBA", "LA") or (image.mode == "P" and "transparency" in image.info):
    # 创建一个新的 RGB 图像,背景颜色为指定的填充颜色
    background_color = (255, 0, 0)  # 填充颜色为红色
    new_image = Image.new("RGB", image.size, background_color)

    # 将原图像覆盖在新图像上,透明区域会显示填充颜色
    new_image.paste(image, (0, 0), image)

    # 保存结果图像
    new_image.save("filled_image.png")
else:
    print("图像没有透明通道,无需填充颜色。")

在这个示例中,我们首先使用 Image.open() 函数打开 PNG 图像。然后,我们检查图像是否具有透明通道。如果图像具有透明通道,我们创建一个新的 RGB 图像,指定背景颜色作为填充颜色,然后使用 paste() 方法将原图像覆盖在新图像上,透明区域会显示填充颜色。最后,我们使用 save() 方法保存结果图像。

请注意,这个示例中的填充颜色是 (255, 0, 0),即红色。您可以根据需要更改为其他颜色。