使用Python和PIL(Python Imaging Library)来压缩图像的方法如下:
安装PIL库
首先需要安装PIL库。可以通过以下命令来安装:
pip install Pillow
图像压缩
使用PIL库中的Image.open()
函数来打开图像。使用save()
函数来保存压缩后的图像。
以下是一个简单的示例程序:
from PIL import Image
# 打开图片
image = Image.open('test.jpg')
# 将图片压缩
image.save('compressed.jpg', optimize=True, quality=50)
在这个示例程序中,我们使用了Image.open()
函数来打开了一个名为test.jpg
的图像文件。我们接着使用save()
函数来保存压缩后的图像到compressed.jpg
文件中。
其中quality
参数表示图片的质量,可取值范围为0-100,最高质量为100,最低质量为0。optimize
参数表示是否启用压缩优化,设置为True会使得压缩更加优化。
还有另一个使用可选参数进行图像压缩的示例程序。使用参数quality
指定压缩程度,并使用参数height
控制图片高度。如果同时指定了宽度和高度,则图片大小将被缩放以适应指定的宽度和高度。
以下代码演示了如何使用这些参数进行图像压缩:
from PIL import Image
# 打开图片
image = Image.open('test.jpg')
# 将图片压缩
new_height = 500 # 指定图片高度
quality = 20 # 指定压缩质量
new_width = int(new_height * image.width / image.height) # 根据比例计算图片宽度
resized_image = image.resize((new_width, new_height)) # 重新调整图片大小
resized_image.save('compressed.jpg', optimize=True, quality=quality) # 保存压缩后的图片
在这个示例程序中,我们首先使用Image.open()
函数来打开了一个名为test.jpg
的图像文件。我们先将图片高度设定为500像素,并使用此高度计算出比例,并从而将图像的宽度进行了相应调整。在这个示例程序中,我们将图片的压缩质量设置为20,注重了图片大小而没有注重图片质量的高度,最后调用save()
函数来保存压缩后的图像。