显示失真图像的Tkinter
问题描述
我正在尝试使用Tkinter显示gif,但当gif加载时,它看起来非常奇怪。我已经粘贴了原始gif和在tkinter中显示的gif的屏幕截图。不是只有一个gif,而是我使用的每个gif都会发生这种情况。
GIF中的原始框架:
tkinter中看到的帧:
代码如下:
from Tkinter import *
import time as t
root = Tk()
frames = []
i = 0
while True:
try:
frames.append(PhotoImage(file='display.gif',format='gif -index %i' %(i)))
i += 1
except TclError:
break
def update(ind):
if ind >= len(frames):
ind = 0
frame = frames[ind]
ind += 1
label.configure(image=frame)
root.after(100, update, ind)
label = Label(root)
label.pack()
root.after(0,update,0)
root.mainloop()
解决方案
尝试PIL模块。它有更好的支持,我在过去的项目中使用过它。它有更好的图像/视频/gif支持。去找一个好的教程吧。
相关文章