PIL image show() 在 Windows 7 上不起作用
我想在 Windows 和其他平台上使用 python 显示图像。 当我这样做时:
from PIL import Image
im = Image.open('image.png')
im.show()
我的默认查看器打开并告诉我 Windows Photo Viewer 无法打开此图片,因为该文件已被删除
等。
该文件可能被删除,因为 PIL 使用以下命令调用操作系统以下命令: "start /wait %s && del /f %s" % (file, file)
我找到了一个解决方法 此处。他们建议将 PIL 的代码更改为 "start /wait %s && PING 127.0.0.1 -n 5 > NUL && del /f %s" % (file, file)
。 但是,我希望其他人能够使用我的代码。
有一个简单的解决方案吗?我是否应该寻找可跨平台工作的 PIL 替代方案?
I would like to show an image using python on windows and other platforms.
When I do:
from PIL import Image
im = Image.open('image.png')
im.show()
my default viewer opens up and tells me that Windows Photo Viewer can't open this picture because either this file was deleted
, etc.
The file is probably deleted because PIL calls the os with the following command: "start /wait %s && del /f %s" % (file, file)
I found a workaround here. They recommend changing PIL's code to "start /wait %s && PING 127.0.0.1 -n 5 > NUL && del /f %s" % (file, file)
.
However, I want others to be able to use my code.
Is there a simple solution? Should I look for an alternative to PIL that would work crossplatform?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
好的,在此处找到了解决方案:
它在我的计算机上打开默认查看器,而不是浏览器。
另外,还有
os.startfile
。Ok, found a solution here:
It opens the default viewer, not the browser, on my machine.
Also, there is
os.startfile
.如果您希望它仅由 MS Paint 打开,您可以使用:
start /wait mspaint %s && del /f %s" % (file, file)
当直接指定文件名时,
/wait
没有任何作用。If you want it to be opened by MS paint only, you can use:
start /wait mspaint %s && del /f %s" % (file, file)
The
/wait
is not having any effect when the file name is specified directly.当照片查看器出现时,
转到顶部菜单 -> 打开 -> 选择程序 ->选择油漆
关于西班牙语 ->阿布里尔->埃勒吉尔计划 ->选择绘画
图像参考:图像
When Photo Viewer does appear,
Go to menu on top ->Open->Choice Program-> Select Paint
On Spanish -> Abrir-> Elegir Programa -> seleccionar Paint
image reference: image