Maison > développement back-end > Tutoriel Python > Comment puis-je redimensionner une image tout en préservant son rapport hauteur/largeur à l'aide de PIL ?

Comment puis-je redimensionner une image tout en préservant son rapport hauteur/largeur à l'aide de PIL ?

Linda Hamilton
Libérer: 2024-12-08 19:57:11
original
667 Les gens l'ont consulté

How Can I Resize an Image While Preserving its Aspect Ratio Using PIL?

Redimensionnement des images avec préservation des proportions à l'aide de PIL

Le maintien des proportions d'une image pendant le redimensionnement est crucial pour préserver son intégrité visuelle. La Python Imaging Library (PIL) offre une solution pratique pour cette tâche.

Problème :

"Puis-je redimensionner une image tout en conservant ses proportions ?"

Réponse :

  1. Définir une taille maximale souhaitée (largeur et hauteur).
  2. Calculez le rapport de redimensionnement :

    ratio = min(max_width / width, max_height / height)
    Copier après la connexion
  3. La nouvelle taille de l'image devient :

    new_size = old_size * ratio
    Copier après la connexion
  4. Pour plus de commodité, PIL fournit la méthode Image.thumbnail() :
from PIL import Image

size = 128, 128
im = Image.open("image.jpg")
im.thumbnail(size, Image.Resampling.LANCZOS)
im.save("image.thumbnail.jpg", "JPEG")
Copier après la connexion

Dans Dans cet exemple, l'image est redimensionnée à une largeur et une hauteur maximales de 128 pixels, tout en préservant son rapport hauteur/largeur d'origine. L'option Image.Resampling.LANCZOS permet un rééchantillonnage de haute qualité.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal