使用 python PIL 粘贴时黑屏

black screen when using python PIL paste

我正在尝试将几张图片首尾相连,然后显示在 canvas 上。我不明白为什么这张图片显示为黑色。有什么想法吗?

from tkinter import *
from PIL import Image, ImageTk

root = Tk()
canvas = Canvas(root, width=1000, height=800)
canvas.pack()

grass = Image.open(r"C:\pathto\grass.gif")
water = Image.open(r"C:\pathto\ffwater.gif")

r1 = ['g','g','g','w','w','w','g','g']
row = Image.new('RGB', (1000, 800))

xx = 0
for i in r1:
    if i == 'g':
        img = grass
    if i == 'w':
        img = water
    row.paste(img, (xx, 0))
    xx = xx + img.size[0]

worldr1 = ImageTk.PhotoImage(row)
canvas.create_image(0,0, image=worldr1)

root.mainloop()

图像是黑色的,因为它在 Canvas 上仅部分可见。我替换了

canvas.create_image(0,0, image=worldr1)

来自

canvas.create_image(0,0, anchor="nw", image=worldr1)

并且完整图像在 Canvas 上可见(默认值为 anchor="center")。