Добрый день!
Мне нужно увеличить или уменьшить изображение до пропорций 900х1200, но чтобы оно не растягивалось, а именно увеличивалось, с помощью белых полей по краям. Подскажите, пожалуйста, как это сделать?
Есть код, как сделать подобное, но получается в итоге либо 900х900, либо 1200х1200, а мне нужно именно 900х1200
target_width = 900
target_height = 1200
for subdir, dirs, files in os.walk('CATALOGUE/images_new/'):
if subdir != 'CATALOGUE/images_new/':
for img in files:
img = Image.open(subdir + '/' + img)
target_ratio = target_height / target_width
img_ratio = img.height / img.width
if target_ratio > img_ratio:
resize_width = target_width
resize_height = round(resize_width * img_ratio)
else:
resize_height = target_height
resize_width = round(resize_height / img_ratio)
image_resize = img.resize((resize_width, resize_height), Image.ANTIALIAS)
background = Image.new('RGBA', (target_width, target_height), (255, 255, 255, 255))
offset = (round((target_width - resize_width) / 2), round((target_height - resize_height) / 2))
background.paste(image_resize, offset)