擦除 PIL 图像的矩形区域

Erasing a rectangular area of PIL image

如何在不改变尺寸的情况下擦除 PIL 图像的矩形区域并使其透明?

我通过裁剪图像并粘贴到空图像上来实现这一点,但它无法擦除图像内部的区域。我的实现主要是算术,所以我试图找到一种更优雅的方法。

需要用RGBA模式打开

from PIL import Image

rect_size = (100, 300)
rect_pos = (200, 400)

im = Image.open("your-image.jpg").convert("RGBA")
rect = Image.new("RGBA", rect_size, (255, 255, 255, 0))
im.paste(rect, rect_pos)
im.show()