【问题标题】:Tkinter canvas image works on windows but not OSXTkinter 画布图像适用于 Windows 但不适用于 OSX
【发布时间】:2019-07-27 22:58:30
【问题描述】:

有点初学者所以请原谅我的错误。

我创建了一个超级简单的 tk 脚本,它创建一个画布并在其上显示图像。它适用于 Windows,但不适用于 OSX,唯一的区别是文件路径。

from tkinter import *
from PIL import ImageTk, Image
root = Tk()

canv = Canvas(root, width=80, height=80, bg='white')
canv.pack(expand=YES, fill=BOTH)

img = ImageTk.PhotoImage(Image.open(r"C:\project\TechArt\tools\illustrator_label_browser\thumbnails\rachel_vector_lines.png"))  # PIL solution
canv.create_image(20, 20, anchor=NW, image=img)

mainloop()

OSX 莫哈韦:

from tkinter import *
from PIL import ImageTk, Image
root = Tk()

canv = Canvas(root, width=80, height=80, bg=‘white’)
canv.pack(expand=YES, fill=BOTH)

img = ImageTk.PhotoImage(Image.open(“/Users/jonathansundberg/Techart/tools/illustrator_label_browser/thumbnails/rachel_vector_lines.png”))  # PIL solution
canv.create_image(20, 20, anchor=NW, image=img)

mainloop()

我做错了什么?

【问题讨论】:

  • 您在 OSX 中收到的错误信息是什么?
  • 无,运行正常但图片不显示

标签: python image canvas tkinter tk


【解决方案1】:

我也有 macOS Mojave。这三个命令可能会有所帮助:

sudo easy_install pip
pip install Pillow
python3.7 -m pip install pillow

我能够用你的代码和 python3.7 命令打开 jpeg 文件。

【讨论】:

  • png 文件的表现如何?
  • 是的,它也适用于 png 文件——我刚刚对其进行了测试。不同之处不仅在于路径,还在于具有不同软件版本的整个系统。必须符合 macOS 上的命令行才能解决此问题:python.org/download/mac/tcltk macOS 上的 PIL 包有多个问题:google "python PIL mac"
猜你喜欢
  • 1970-01-01
  • 2014-08-11
  • 1970-01-01
  • 2018-12-03
  • 2017-08-20
  • 2016-04-09
  • 1970-01-01
  • 1970-01-01
  • 2018-06-12
相关资源
最近更新 更多