我在Windows上运行Python 3.1,我试图通过cx_Freeze将我的Pygame脚本作为可执行文件分发。现在看来只是EXE构建不能加载任何图像进行工作:SDL/Pygame无法使用cx_Freeze加载PNG图像
Cannot load image: C:\path\to\build\exe.win32-3.1\resources\image.png
File is not a Windows BMP file
谷歌搜索显示,发生这种情况时,SDL成像库不能正确包括在内。然而,SDL_image.dll
和libpng12-0.dll
都被cx_Freeze放到我的build目录中,所以在我看来,一切都应该没问题。为什么它不能加载PNG图像?
编辑:我通过将我的脚本移植到Python 2.6并使用py2exe来“解决”了这个问题,因为它有一些我需要的功能。
冻结之前它可以工作吗?如果将文件转换为.bmp,会发生什么情况? – joaquin 2010-05-21 15:12:11
是的,冻结前它工作得很好。如果我将图像转换为.bmp,它们会加载正常,但我宁愿有可能使用.png的选项。 – tankadillo 2010-05-21 15:18:48