我想将自己的图像放在画布的背景中。 我做了这个代码:
size = (800,600)
im = Image.new('RGB',size)
pix = im.load()
for i in range(size[0]):
for j in range(size[1]):
pix[i,j] = (100,100,100)
im.save('ima5.png')
im2 = ImageTk.PhotoImage(im)
canvas = Tkinter.Canvas(width=Width, height=Height, bg=im2)
我发现了这个错误:_tkinter.TclError: unknown color name "pyimage1"
,我知道这就是为什么图片没有画布所期望的格式。
如何将im2作为画布的背景?
答案 0 :(得分:1)
bg / background属性需要颜色,而不是图像。要使用图像作为背景,请使用画布的create_image
方法:
import Image, ImageTk, Tkinter
im = ImageTk.PhotoImage(Image.open("<path\\to\\image.jpg-ect>").resize((800,600)))
canvas = Tkinter.Canvas(Parent, width=WIDTH, height=HEIGHT)
canvas.pack() #place(), etc.
Canvas_Image = canvas.create_image(0,0 image=im, anchor="nw")