Avec PIL il est possible de réduire facilement la taille d'une image. Dans l'exemple ci-dessous la taille de l'image (input.png) est de 3.6 MB en utilisant la méthode 'resize' de PIL et en divisant par 2 les dimensions correspondantes à la largeur et à la hauteur de l'image (int(foo_size[0]/2.0),int(foo_size[1]/2.0) puis en sauvegardant l'image redimensionne avec la méthode 'save' avec l'argument quality=95, on obtient ici en sortie une image de taille 509KB:
>>> import Image
>>> foo = Image.open("input.png")
>>> foo.size
(2156, 1798)
>>> foo_size = foo.size
>>> foo = foo.resize((int(foo_size[0]/2.0),int(foo_size[1]/2.0)),Image.ANTIALIAS)
>>> foo.save("output.jpg",quality=95)
Recherches associées
Liens | Site |
---|---|
PIL | PIL module |
How to reduce the image file size using PIL | stackoverflow |
How to save progressive jpeg using Python PIL 1.1.7? | stackoverflow |