web-dev-qa-db-fra.com

PIL: ValueError: filtre de rééchantillonnage inconnu, comment redimensionner les images téléchargées sur Flask?

Je crée une application Web à l'aide de Flask et je souhaite redimensionner les images téléchargées. J'utilise PIL pour ce faire, mais une erreur est générée.

Le processus pour le faire est comme ça, mais il semble inefficace:

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)

Ce que j'essaie de faire, c'est d'enregistrer l'image après que l'utilisateur l'ait téléchargée, d'ouvrir le nouveau fichier, de la redimensionner et de l'enregistrer à nouveau.

Comment puis-je corriger mon erreur?

Existe-t-il également un moyen de le faire plus efficacement (sans enregistrer le fichier non redimensionné), en utilisant une bibliothèque Python?

12
user9572098

img = img.resize (300, 300)

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

24
Park