首页 > 后端开发 > Python教程 > 如何使用 PIL 调整图像大小同时保持纵横比?

如何使用 PIL 调整图像大小同时保持纵横比?

Susan Sarandon
发布: 2024-12-11 08:26:09
原创
788 人浏览过

How to Resize Images with PIL While Maintaining Aspect Ratio?

使用 PIL 调整图像大小,同时保留纵横比

创建缩略图时,保持图像的原始纵横比至关重要。在本文中,我们将探讨如何使用 Python 图像库 (PIL) 来实现此目的。

方法:

  1. 定义最大大小: 确定您所需的最大宽度和高度缩略图。
  2. 计算调整大小比例:通过查找 maxwidth/width 和 maxheight/height 中较小的一个来计算最小缩放比例。
  3. 计算新尺寸: 将原始大小乘以计算的比率以获得正确的大小

使用 PIL 库的替代方法:

PIL 提供了专门为此目的设计的 Image.thumbnail() 方法。它以最大尺寸作为参数,并在保持宽高比的同时自动调整图像尺寸。

以下是 PIL 文档中的示例:

import os, sys
import Image

size = 128, 128

for infile in sys.argv[1:]:
    outfile = os.path.splitext(infile)[0] + ".thumbnail"
    if infile != outfile:
        try:
            im = Image.open(infile)
            im.thumbnail(size, Image.Resampling.LANCZOS)
            im.save(outfile, "JPEG")
        except IOError:
            print "cannot create thumbnail for '%s'" % infile
登录后复制

以上是如何使用 PIL 调整图像大小同时保持纵横比?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板