Djangoでは、アップロードされたイメージをディスクに保存する前に変更(サイズ変更)できますか?私は余分なアプリを使用せずにこれを行うことを好むだろう。アップロード中のDjangoサイズ変更イメージ
9
A
答えて
19
私は、ここにあるビットのみ、私は完全な作業例を見つけることができなかったことをイライラしました。私は自分で解決策をまとめることができました。ここでは完全な例を示します。私はそれをフォームのclean()メソッドに置きます(モデルsave()メソッドをオーバーライドすることもできます - ImageFieldのファイルプロパティを変更する)。
import StringIO
from PIL import Image
image_field = self.cleaned_data.get('image_field')
image_file = StringIO.StringIO(image_field.read())
image = Image.open(image_file)
w, h = image.size
image = image.resize((w/2, h/2), Image.ANTIALIAS)
image_file = StringIO.StringIO()
image.save(image_file, 'JPEG', quality=90)
image_field.file = image_file
+0
この例をありがとうが、私はすべてを理解していない... "情報"とは何ですか?そうでなければ、Python 3.xではio.StringIO(...) – HydrUra
5
YourModel.save()メソッドでPILを使用してイメージのサイズを変更できます。
例:
http://djangosaur.tumblr.com/post/422589280/django-resize-thumbnail-image-pil
http://davedash.com/2009/02/21/resizing-image-on-upload-in-django/
関連する問題
- 1. Javaイメージのサイズ変更(3サイズ)をAmazon S3にアップロード
- 2. Wordpressでのアップロード中にイメージのサイズを変更またはトリミングする方法
- 3. アップロード中にイメージのサイズを変更する方法と自動的にdjangoを保存する方法は?
- 4. ファイルのアップロード中にサイズ変更されたイメージを移動する方法
- 5. PHPイメージのアップロード/サイズ変更中に致命的なエラーが発生する
- 6. イメージのサイズ変更
- 7. アップロード前のイメージのサイズをVBで変更する
- 8. Androidのfirebaseイメージをサイズ変更し、firebaseのストレージにアップロード
- 9. イメージのサイズ変更のスピードアップ
- 10. イメージのサイズ変更Objective-C
- 11. Kraken.ioイメージのサイズ変更
- 12. サイズ変更イメージのCSS/HTML
- 13. イメージのサイズ変更 - Symfony
- 14. アンドロイドバックグラウンドxmlのサイズ変更イメージ
- 15. Codeigniterイメージのサイズ変更?
- 16. イメージとイメージフォーマットのサイズ変更
- 17. RahpaelJSイメージのサイズ変更
- 18. イメージをアップロード、サイズ変更、データベースに保存、表示
- 19. HTML5 - イメージのサイズを変更し、サイズ変更されたイメージにEXIFを保持
- 20. イメージをPythonMagickでサイズ変更
- 21. スウィフト - サイズ変更イメージiMessageアプリケーション
- 22. イメージをPHPでサイズ変更
- 23. イメージをイオンカードでサイズ変更
- 24. イメージのサイズ変更と中心合わせ方法
- 25. アップロード画像、トリミング、サイズ変更
- 26. イメージを他のイメージのサイズにサイズ変更Python PIL
- 27. イメージを初期サイズにサイズ変更
- 28. magento:アップロード中に希望のサイズに画像をサイズ変更する
- 29. アップロード後のイメージ名をcodeigniterに変更
- 30. リッチテキストエディタの推奨事項 - イメージのアップロードとサイズ変更のサポートが必要
(http://whathaveyoutried.com)ジョブの – arulmr
使用PIL [あなたは試してみましたか?]:http://stackoverflow.com/questions/273946/how-do-i-resize-an -image-using-pil-and-maintain-its-aspect-ratio –
djangoはあなたが探しているもののための事前定義されたメソッドを持っていないので、これを達成するために外部ライブラリまたはアプリケーションを使用する必要があります。 – Amyth