Python 如何使用PIL调整图像的大小并保持其长宽比

您所在的位置:网站首页 oppor9的尺寸长x宽 Python 如何使用PIL调整图像的大小并保持其长宽比

Python 如何使用PIL调整图像的大小并保持其长宽比

2024-06-13 20:24| 来源: 网络整理| 查看: 265

Python 如何使用PIL调整图像的大小并保持其长宽比

在本文中,我们将介绍如何使用Python Imaging Library(PIL)库来调整图像的大小并保持其长宽比。PIL是一个功能强大的图像处理库,可以处理多种图像操作,包括图像的调整大小和长宽比的维持。

阅读更多:Python 教程

1. 安装PIL库

在使用PIL之前,我们需要先安装该库。可以通过以下命令在命令行中安装PIL:

pip install pillow 2. 调整图像大小并保持长宽比

要调整图像的大小并保持其长宽比,我们需要先确定调整后图像的目标大小。然后,我们可以使用PIL库中的thumbnail()函数来实现此功能。

下面是一个示例代码,演示了如何调整图像的大小并保持其长宽比:

from PIL import Image def resize_image_with_aspect_ratio(image_path, output_path, target_size): with Image.open(image_path) as image: # 计算调整后图像的目标大小及长宽比 width, height = image.size aspect_ratio = width / height target_width, target_height = target_size target_aspect_ratio = target_width / target_height # 计算调整后图像的实际大小 if target_aspect_ratio < aspect_ratio: # 以目标宽度为准进行调整 new_width = target_width new_height = int(target_width / aspect_ratio) else: # 以目标高度为准进行调整 new_width = int(target_height * aspect_ratio) new_height = target_height # 调整图像的大小并保存 resized_image = image.resize((new_width, new_height)) resized_image.save(output_path) # 调用示例 input_image_path = 'input.jpg' output_image_path = 'output.jpg' target_size = (800, 600) resize_image_with_aspect_ratio(input_image_path, output_image_path, target_size) 3. 示例说明

以上示例代码中的resize_image_with_aspect_ratio()函数接受输入图像路径、输出图像路径和目标大小作为参数。在函数中,我们首先打开输入图像,然后计算调整后图像的目标大小和长宽比。

根据目标长宽比与原图的长宽比进行比较,我们决定以目标宽度或目标高度为基准进行调整。然后,我们计算出调整后图像的实际大小。

最后,我们使用PIL库中的resize()函数将图像调整为目标大小,并使用save()函数保存调整后的图像。

总结

在本文中,我们介绍了如何使用PIL库来调整图像的大小并保持其长宽比。通过使用PIL库中的thumbnail()函数,我们可以简单地实现该功能。根据目标长宽比与原图的长宽比的比较,我们可以确定以目标宽度或目标高度为基准进行调整,并计算出调整后图像的实际大小。通过掌握这些技巧,可以方便地调整图像大小并保持其长宽比。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3