我正在尝试使用该paste(im, box=(4-tuple))
方法更新Label
在 Tkinter(python) 窗口中创建的显示图像。
下面的代码是一个最小的例子,展示了我在做什么。背景是现有图像,蒙版是要粘贴到现有图像上的图像。默认情况下,遮罩将在现有图像的左上角更新。
通过向该方法添加box
参数paste
,我希望将掩码移动到不同的位置。在这种情况下,我尝试box=(40,40,90,90)
了box
论点。
from Tkinter import *
import Image, ImageTk
root = Tk()
background_Image = Image.new("RGB",(500,500), (255,0,255,255))
background_Tk = ImageTk.PhotoImage(background_Image)
mask = Image.new('RGBX', (50,50), color=(255,255,255,0))
p1 = Label(root, image=background_Tk)
p1.pack()
background_Tk.paste(mask, box=(40,40,90,90))
root.mainloop()
图像已更新,但不在我想要的位置。它仍然出现在背景的左上角。在尝试了很多可能的box
参数坐标组合后,我仍然无法更改掩码的位置。在这种情况下,我没有显示面具的确切位置,我只想移动它,因为我在互联网上找不到工作示例。我想谦虚地问一下这个box
论点的正确表达是什么?你能告诉我一个工作的例子吗?
为了您的方便,我在这里复制方法的文档paste
:
粘贴(我,框=无)
将 PIL 图像粘贴到照片图像中。请注意,如果显示照片图像,这可能会非常慢。
参数:
im – PIL 图像。大小必须与目标区域匹配。如果模式不匹配,则将图像转换为位图图像的模式。box – 定义左、上、右和下像素坐标的 4 元组。如果给出 None 而不是元组,则假定所有图像。