I would like to show an image using python on windows and other platforms. When I do:
from PIL import Image
im开发者_JAVA技巧 = 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?
Ok, found a solution here:
import webbrowser
webbrowser.open('image.png')
It opens the default viewer, not the browser, on my machine.
Also, there is os.startfile.
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
加载中,请稍侯......
精彩评论