Python / Pillow: How to scale an image

六月ゝ 毕业季﹏ 提交于 2019-11-29 23:54:51
famousgarkin

Noo need to reinvent the wheel, there is the Image.thumbnail method available for this:

maxsize = (1028, 1028)
image.thumbnail(maxsize, PIL.Image.ANTIALIAS)

Ensures the resulting size is not bigger than the given bounds while maintains the aspect ratio.

Specifying PIL.Image.ANTIALIAS applies a high-quality downsampling filter for better resize result, you probably want that too.

Sohcahtoa82

Use Image.resize, but calculate both width and height.

if image.width > 1028 or image.height > 1028:
    if image.height > image.width:
        factor = 1028 / image.height
    else:
        factor = 1028 / image.width
    tn_image = image.resize((int(image.width * factor), int(image.height * factor)))
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!