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

13 python flask pillow

我正在使用Flask创建一个Web应用程序,我想调整上传的图像大小.我正在使用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)
Run Code Online (Sandbox Code Playgroud)

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

我该如何修复错误?

还有一种方法可以使用Python库更有效地执行此操作(不保存未调整大小的文件)吗?

小智 25

img = img.resize(300,300)

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


小智 6

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

并且不作为

new_image = image.resize(img_width,img_size)