详解Python PIL Image.save()方法

  • Post category:Python

下面是Python PIL库中的Image.save()方法的详细讲解:

一、Image.save()方法概述

Image.save()方法是PIL库中用于保存图像的方法。可以将当前的Image对象保存为指定格式的图像文件。

Image.save()可以接收三个参数:
– filename:是保存的文件名,必须包含扩展名(如.jpg、.png等);可以是绝对路径或相对路径;
– format:是保存的文件格式,需要根据实际情况选择(如JPEG、PNG等),PIL库支持的格式可以通过PIL.Image.registered_extensions()查看;
– options:是保存选项的字典,可以省略。

二、Image.save()方法示例

下面是两个示例,分别演示了将图像保存为JPEG和PNG格式。

2.1、将图像保存为JPEG格式

假设我们已经读取了一张图像文件,并生成了对应的Image对象。代码如下:

from PIL import Image

# 读取图像文件
im = Image.open('test.jpg')

要将图像保存为JPEG格式,只需使用Image.save()方法,并将文件名设置为提供的格式即可。示例如下:

# 将图像保存为JPEG格式
im.save('output.jpg')

上面的示例中,我们将图像保存为output.jpg文件,这里没有指定文件的格式,但是由于文件名中包含了.jpg扩展名,因此PIL库会自动识别文件格式,并保存为JPEG格式。

2.2、将图像保存为PNG格式

对于PNG格式的保存,与JPEG类似,只需将文件名设置为提供的格式即可。示例如下:

# 将图像保存为PNG格式
im.save('output.png')

上面的示例中,我们将图像保存为output.png文件,由于文件名中包含了.png扩展名,因此PIL库会自动识别文件格式,并保存为PNG格式。

三、Image.save()方法的其他注意事项

  • 如果保存的文件已经存在,则会被覆盖。
  • 如果要同时保存多个格式的图像文件,可以写一个循环,分别使用Image.save()保存即可。
  • 在保存JPEG格式文件时,可以使用options参数控制保存质量。如,将质量设置为90%可以提高图像质量,并使文件变大。示例如下:
# 设置JPEG保存质量为90%
im.save('output.jpg', 'JPEG', quality=90)