La bibliothèque d'images Python (PIL) offre un ensemble complet de fonctions de manipulation d'images. Une opération utile consiste à redimensionner les images, mais de nombreux développeurs rencontrent des difficultés pour conserver le rapport hauteur/largeur d'origine. Cet article se penche sur ce problème et propose des solutions pour garantir un redimensionnement proportionnel de l'image.
En essayant de créer des vignettes, un utilisateur est tombé sur le défi suivant :
Y a-t-il un moyen évident de faire cela qui me manque ? J'essaie juste de créer des vignettes.
Pour redimensionner une image tout en préservant ses proportions, envisagez les étapes suivantes :
import os, sys from PIL import Image size = 128, 128 # Define the maximum size of the thumbnail for infile in sys.argv[1:]: outfile = os.path.splitext(infile)[0] + ".thumbnail" # Generate the output filename if infile != outfile: try: im = Image.open(infile) im_copy = im.copy() # Create a copy to avoid modifying the original image im_copy.thumbnail(size, Image.Resampling.LANCZOS) # Resize the image im_copy.save(outfile, "JPEG") # Save the resized image except IOError: print(f"cannot create thumbnail for '{infile}'") # Handle any exceptions
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!