PIL:ValueError:未知重采样过滤器,如何调整Flask上传的图像大小?

时间:2018-03-29 21:27:52

标签: python flask pillow

我正在使用Flask制作网络应用,我想调整上传的图片大小。我使用PIL执行此操作,但会引发错误。

这样做的过程就是这样,但似乎效率低下:

filename = secure_filename(form.image.data.filename)
form.image.data.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
img = Image.open(os.path.join(app.config['UPLOAD_FOLDER'],filename), 'r')
img = img.resize(300, 300)
img.save(filename, quality=100, optimize=True)

我尝试做的是在用户上传图像后保存图像,打开新文件,调整图像大小并再次保存。

如何修复错误?

还有一种方法可以更有效地使用Python库来保存未调整大小的文件吗?

2 个答案:

答案 0 :(得分:21)

img = img.resize(300,300)

=> img = img.resize((300,300))

答案 1 :(得分:1)

要记住的最重要的事情不是将大小作为对象传递,而是将其作为元组传递给调整大小函数new_image = image.resize((img_width,img_size))

而不是

new_image = image.resize(img_width,img_size)