消息文件名 语法错误 (unicode错误)‘独角形转义’编解码器无法解码位置2-3的字节:>截断\UXXXXXXXX转义C:\visualexample.py
我已经导入了PIL和tkinter,并尝试了一些不同的东西,但我看到的主要建议是:
ImageTk.PhotoImage(Image.open("C:\testpic.gif")) =
或
tk.PhotoImage(Image.open("C:\testpic.gif")) =
还尝试过图像文件类型:.bmp、.jpeg、.png、.gif....put,将它们放入标签并打包或放置。
我还得到了另一个我手头没有的错误消息,但是它是这样的:
Invaild '____str____‘值类型:'JpegImageFormat’不是公认的格式。
当出现这种情况时,它也会对所有图片文件类型执行此操作。
我想我将不得不用普通的、陈旧的、坚实的背景和字体颜色来修饰我的程序。也许PIL是错误的(我必须将它与python3.3分开),我认为我得到了正确的。
也许有文件大小(Mb)的限制?
如果有人对如何在背景中放置图片文件有任何建议,那就太好了!
编辑:Python3x,导入tkinter并从PIL导入ImageTk,Image
建议适用于.gif .bmp .png .jpg :)
img = PIL.ImageTk.PhotoImage(PIL.Image.open(picfilepath))
发布于 2016-07-20 09:02:54
我对PIL和Tkinter图片也有问题..。我找了好几个小时才找到解决办法。试试这个,我希望它能帮你,这个简单的程序运行一个标签,上面有一个图片:
from tkinter import *
import PIL.Image
import PIL.ImageTk
root = Tk()
image = PIL.ImageTk.PhotoImage(PIL.Image.open ("C:/Users/Vladi/example.jpg"))
label = Label (root, image = image).pack()
root.mainloop()我刚刚指定了我从其中提取模块的所有库。还要小心反斜杠..。使用您所使用的,您将得到一个错误。使用这个:/或:\\
如果您想调整它的大小:
img = PIL.Image.open ("C:/Users/Vladi/example.jpg")
img = img.resize ((80, 75))
img = PIL.ImageTk.PhotoImage(self.im)在调用PhotoImage之前,您必须调整它的大小,您也可以将其写成一行:
img = PIL.ImageTk.PhotoImage(PIL.Image.open ("C:/Users/Vladi/example.jpg").resize((80, 75)))我希望我帮了你
发布于 2016-07-19 21:21:02
看来PIL有严重的问题。我认为它还不支持Python3 (https://mail.python.org/pipermail/image-sig/2009-March/005498.html)。但我也在Python2.7.11上尝试过,无法显示任何图像。如果您想在Tkinter上显示图像,我建议您尝试如下:
from tkinter import *
root = Tk()
imgobj = PhotoImage(file="filename.png")
label = Label(root, image=imgobj)
label.pack()它还支持gif图像格式,但不支持jpg类型。
https://stackoverflow.com/questions/38467545
复制相似问题