In Django, è possibile modificare (ridimensionare) l'immagine caricata prima che venga salvata sul disco? Preferirei farlo senza usare app aggiuntive.Immagine di ridimensionamento di Django durante il caricamento
risposta
ero infastidito dal fatto che non riuscivo a trovare un esempio di lavoro completo, solo pezzi qua e là. Sono riuscito a mettere insieme la soluzione da solo. Ecco l'esempio completo, l'ho inserito nel metodo clean() del modulo (puoi anche sovrascrivere il metodo save(), nello stesso modo - cambiando la proprietà del file di 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
Grazie per questo esempio, ma non capisco tutto ... Che cos'è "info"? Altrimenti, in python 3.x è io.StringIO (...) – HydrUra
È possibile utilizzare PIL e ridimensionare l'immagine nel metodo YourModel.save().
Esempi:
http://djangosaur.tumblr.com/post/422589280/django-resize-thumbnail-image-pil
http://davedash.com/2009/02/21/resizing-image-on-upload-in-django/
Hai un esempio di codice? – johndoevodka
Sì, aggiunto nel mio post :) – Efrin
+1 per suggerire PIL – Amyth
- 1. Caricamento e ridimensionamento PHP immagine
- 2. Rinomina immagine durante il caricamento sul server
- 3. Mostra elemento predefinito durante il caricamento Immagine
- 4. immagine di ridimensionamento php su o prima del caricamento
- 5. UnicodeEncodeError durante il caricamento di file nell'amministratore di Django
- 6. Ridimensionamento immagine con Ritaglio
- 7. Qualità ridimensionamento immagine (Java)
- 8. RS2008 immagine di sfondo ridimensionamento
- 9. Caricamento immagine generata da JavaScript a Django
- 10. Caricamento immagine usando JQuery e Django
- 11. Caricamento immagine profilo con Django ModelForm
- 12. Ridimensionamento immagine IFrame
- 13. Ridimensionamento immagine con C#
- 14. C# ridimensionamento immagine
- 15. Bootstrap carosello ridimensionamento immagine
- 16. Ridimensionamento immagine jquery
- 17. ridimensionamento immagine java getScaledInstance
- 18. Ridimensionamento immagine di sfondo per adattarsi
- 19. tela Immagine di ridimensionamento/scew/ND
- 20. $ _FILES vuota durante il caricamento
- 21. Problemi di input di Firefox durante il ridimensionamento della pagina
- 22. Timeout durante il caricamento di un file di grandi dimensioni?
- 23. - Miglioramento durante il caricamento nell'archivio di Azure
- 24. Problemi durante il caricamento di git2.dll?
- 25. Errore durante il caricamento di app ionica
- 26. Errore durante il caricamento di rJava
- 27. ProgessBar Android durante il caricamento di WebView
- 28. OSError durante il caricamento di file su un NFS
- 29. immagine caricamento non funziona sul server di
- 30. Ridimensionamento immagine: cos'è un "filtro"?
[Che cosa hai provato?] (Http://whathaveyoutried.com) – arulmr
Utilizzare PIL per il lavoro: http://stackoverflow.com/questions/273946/how-do-i-resize-an -image-using-pil-and-maintain-its-aspect-ratio –
è necessario utilizzare una libreria esterna o un'app per raggiungere questo obiettivo poiché django non ha metodi predefiniti per ciò che si sta cercando di fare. – Amyth