Perpustakaan Pengimejan Python (PIL) menawarkan set fungsi manipulasi imej yang komprehensif. Satu operasi yang berguna ialah mengubah saiz imej, tetapi banyak pembangun menghadapi cabaran dalam mengekalkan nisbah aspek asal. Artikel ini membincangkan isu ini dan menyediakan penyelesaian untuk memastikan saiz semula imej berkadar.
Semasa cuba membuat lakaran kecil, pengguna terjumpa cabaran berikut:
Adakah terdapat cara yang jelas untuk melakukan ini yang saya hilang? Saya hanya cuba membuat lakaran kecil.
Untuk mengubah saiz imej sambil mengekalkan nisbah bidangnya, pertimbangkan langkah berikut:
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
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Saiz Imej dengan PIL Sambil Mengekalkan Nisbah Aspek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!