我想把一张jpg图片放到tkinter画布上。tkinter给了我这个错误:
无法识别图像文件中的数据
我使用文档中的代码:
canv = Canvas(root, width=80, height=80, bg='white')
canv.grid(row=2, column=3)
img = PhotoImage(file="bll.jpg")
canv.create_image(20,20, anchor=NW, image=img)
png图像也是如此。甚至尝试将图像放入标签小部件,但也出现了相同的错误。发生了什么?
我在Mac上使用Python3。Python文件和图像位于同一文件夹中。
安装PIL/枕头时,请使用:
pip install Pillow
或:
sudo pip install pillow
from PIL import Image
from PIL import ImageTk
import tkinter
image = Image.open('bll.jpg')
image = image.resize((20, 20))
image = ImageTk.PhotoImage(image)
canv = Canvas(root, width=80, height=80, bg='white')
canv.grid(row=2, column=3)
img = PhotoImage(file=image)
也使用。PNG而不是。JPG更适合Tkinter。
我也遇到了同样的问题。我有windows和Python 3.6。因此,我找到了两种解决方案,您可以使用/转换为。png
image(与您使用的功能相同):
photo = PhotoImage('xyz.png')
l = Label(image = photo)
l.pack()
或者如果你想只读取. jpg
文件,那么使用PIL库读取并显示如下图像:
from PIL import ImageTk, Image
img = ImageTk.PhotoImage(Image.open("xyz.jpg"))
l=Label(image=img)
l.pack()
你的代码似乎是正确的,这是在Windows 7(Python 3.6)上运行的:
from tkinter import *
root = Tk()
canv = Canvas(root, width=80, height=80, bg='white')
canv.grid(row=2, column=3)
img = PhotoImage(file="bll.jpg")
canv.create_image(20,20, anchor=NW, image=img)
mainloop()
导致这个tkinter GUI:
(imgur将其转换为bll.png
,但这也适用于我。)
更多选项:
gif
图像。尝试使用。gif
图像
更新:使用PIL的解决方案
:
from tkinter import *
from PIL import ImageTk, Image
root = Tk()
canv = Canvas(root, width=80, height=80, bg='white')
canv.grid(row=2, column=3)
img = ImageTk.PhotoImage(Image.open("bll.jpg")) # PIL solution
canv.create_image(20, 20, anchor=NW, image=img)
mainloop()
我想问一些关于python3中tkinter的帮助。我似乎无法使用以下代码在标签中显示jpeg图像文件: 它可以做png图像只是罚款,但当我尝试加载一个jpg图像,所有我我能得到的是以下错误: 我浏览了所有我能找到的类似问题,但它们似乎都回答了相同的问题:“从PIL导入ImageTk,图像”当我尝试时(目前,我正在尝试使用枕头,顺便说一句),ImageTk似乎不可用。 任何帮助都将不胜感激。
我有以下问题。我生成。使用外部应用程序的GIF文件。对我来说,GIF看起来不错,我可以毫无问题地打开它们。然而,使用 要将图像添加到Tkinter标签,会出现以下错误: Tcl错误:无法识别图像文件“C:\Users\D8W\Python\hoang\combi ne\u model\u neu\test\u bauteile\SQTR-VO\prev\u F45\u SQTR.GIF”中的数据
问题内容: 我在Visual Studio 2013中运行Python 2.7。以前在Spyder中运行该代码正常,但是在运行时: 我最终遇到以下错误: 为什么会这样,我该如何解决? 如建议的那样,我已经在我的Python 2.7中使用了Pillow安装程序。但是奇怪的是,我最终得到了这个: 都失败了! 问题答案: 我有一个同样的问题。 代替 解决了这个问题
即使我的图像文件和代码在同一个文件夹中,我也会得到_tkinter。 我已经经历了一些其他类似的堆栈溢出问题,但没有成功;没有使用PIL,我如何解决这个问题?这是我的代码: 先谢谢你。
问题内容: 我一直在寻找网络上图像识别数字的资源。我发现许多链接提供了有关该主题的大量资源。但不幸的是,这比提供帮助更令人困惑,我不知道从哪里开始。 我有一个带有5个数字的图像,没有打扰(没有验证码或类似的东西)。数字在白色背景上为黑色,以标准字体书写。 我的第一步是分离数字。我当前使用的算法非常简单,它只是检查一列是否完全为白色,因此是否为空格。然后,它会修剪每个字符,以使其周围没有白色边框。这
突然之间,网络Storm对我来说不认识Javascript了。 如果我添加这样的文件: 之后我在IDE中看到的是: 如果我刷新,重新启动Webstorm,它仍然无法识别文件!网络Storm已无法使用!