Поместите изображение на другое изображение с заливкой

Я использую wand 0.4.1 и хочу разместить изображение поверх другого. Суть в том, что размещаемое изображение, скажем, шириной 400px, но я хочу, чтобы оно растянулось до другой ширины, скажем, 700px. Изображение должно быть правильно растянуто, а соотношение сторон должно быть таким же.

Я думал, что могу как-то сделать это с composite, но не знал, как, так как единственный вариант, который я могу пройти, это top а также left,

Мой текущий код выглядит так:

bg_image = open(bg_image_url, 'rb')
fg_image = open(fg_image_url, 'rb')
with Image(file=bg_image) as bg:
    with Image(file=fg_image) as fg:
        bg.composite(fg, left=100, top=100)
    bg.save(filename='composited_image.jpg')

Как бы я сделал это с wand?

1 ответ

Решение

Wand Transform - это метод, который я искал.

Это можно использовать прямо перед composite:

fg.transform(resize='300x') #resize 'fg' to a width of 300px 
                            #and height is set dynamically, 
                            #respecting the original aspect ratio
Другие вопросы по тегам