使用纵横比填充将图像放在另一个图像上

Place image on another image with aspect fill

我正在使用 wand 0.4.1 并想将一张图片放在另一张图片之上。关键是要放置的图像可以说是 400 像素宽,但我希望它拉伸到不同的宽度,可以说是 700 像素。图片应正确拉伸,纵横比保持不变。

我想我可以用 composite 来做,但不知道怎么做,因为我似乎能够通过的唯一选择是 topleft .

我现在的代码是这样的:

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 完成此操作?

Wand's Transform 是我一直在寻找的方法。

这可以在 composite:

之前使用
fg.transform(resize='300x') #resize 'fg' to a width of 300px 
                            #and height is set dynamically, 
                            #respecting the original aspect ratio