详解用Python Pillow 改变图像的宽度和高度的比例

  • Post category:Python

使用Python Pillow可以通过resize()函数来改变图像的宽度和高度的比例。

下面是一个基本的示例代码,将读入的图像缩放为原来的一半大小。

from PIL import Image

# 读入图片
im = Image.open('test.jpg')
# 缩放为原来的1/2
im_resized = im.resize((int(im.width/2), int(im.height/2)))
# 显示缩放后的图片
im_resized.show()

上面的代码首先使用PIL库读入一张图片,然后使用resize()函数缩小它的尺寸为原来的一半,最后使用show()函数展示缩放后的图片。

resize()函数的参数是一个元组,包含了新图像的宽度和高度。在上面的示例中,我们通过计算原始图像的宽度和高度,通过将它们分别除以2来获得了新图像的宽度和高度。

下面是另一个示例代码,它将读入的图像缩小到指定的大小,并且保持其宽高比。

from PIL import Image

# 读入图片
im = Image.open('test.jpg')
# 缩放为指定大小,并且保持宽高比
im_resized = im.resize((800, int(im.height/im.width*800)))
# 显示缩放后的图片
im_resized.show()

在这个示例代码中,我们指定了新图像的宽度为800像素,并使用原始图像的宽高比来计算新图像的高度。这样,缩放后的新图像就保持了原来的宽高比。

总之,使用resize()函数可以轻松的改变图像的宽度和高度的比例。你可以自定义新的宽度和高度,并且可以使缩放后的新图像保持原来的宽高比。