我正在尝试创建一个程序,该程序以128个气球的图像进行拍摄,这些图像的大小以固定的变化递增,然后将每个图像粘贴到具有一定大小的固定图像的不同副本上,该图像如下所示,并且还有代码,到目前为止,我所做的代码是将它们粘贴在图片的左上角,然后我将要粘贴的每张图片都粘贴在副本下边框的中间,所以总的来说问题就在于创建区域var了: the background the balloon picture
from PIL import Image
i = 0
while(i < 128):
balloon = Image.open("NEAREST" + str(i) + ".jpg")
canvas = Image.open("blank.jpg")
area = (0 ,0,298+i,298+i)
canvas.paste(balloon, area)
canvas.save("PASTE"+str(i)+".jpg")
i = i + 1
答案 0 :(得分:1)
您在Notification Hub
中设置的area
是粘贴的位置(左,上,右,下)。由于您将“左”和“上”设置为零,因此气球被粘贴在左上角。
要将其粘贴到底部中间,您必须计算该位置的正确值:
顶部的空间是背景的高度减去粘贴的图像的高度,即.paste()
,或者仅仅是425 - (298 + i)
或425 - 298 - i
侧面的空间是顶部的一半。
这将为您提供以下代码:
127 - i
请注意,这是根据您的情况进行硬编码的,即,仅当背景为425x425像素时才有效。否则,您将不得不根据图像大小动态计算它。