python 根据图像的长边尺寸将图像调整为多种不同的尺寸。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 根据图像的长边尺寸将图像调整为多种不同的尺寸。相关的知识,希望对你有一定的参考价值。
from PIL import Image
import os
import argparse
p = argparse.ArgumentParser()
p.add_argument("img_filename")
sizes = {
"thumbnail": 100,
"small": 240,
"small 320": 320,
"medium": 500,
"medium 640": 640,
"medium 800": 800,
"large": 1024,
"large 1600": 1600,
"large 2048": 2048
}
def new_size(long_edge_px, current_dimensions):
cx, cy = current_dimensions
if cx >= cy:
ratio = float(cx)/float(cy)
return (long_edge_px, int(long_edge_px/ratio))
else:
ratio = float(cy)/float(cx)
return (int(long_edge_px/ratio), long_edge_px)
def resize_and_save(filename, long_edge_px, new_filename):
print "Resizing %s to %spx and saving as %s" % (
filename, long_edge_px, new_filename)
img = Image.open(filename)
img.resize(new_size(long_edge_px, img.size), Image.ANTIALIAS).save(new_filename)
if __name__ == "__main__":
args = p.parse_args()
for size_name, size in sizes.items():
filename, ext = os.path.splitext(args.img_filename)
resize_and_save(args.img_filename, size, "%s_%s%s" % (
filename, size_name, ext))
以上是关于python 根据图像的长边尺寸将图像调整为多种不同的尺寸。的主要内容,如果未能解决你的问题,请参考以下文章
如何强制 Pillow 将图像调整为任意大小?
如何去除精巧边缘图像中的长边缘?
如何创建可根据不同手机尺寸调整大小的响应式图像?
将图像调整为可变/固定尺寸?
根据图像尺寸动态居中搜索栏
根据屏幕尺寸调整图像大小?