运行:
的Mac OSX山狮10.8.3
的Python 2.7.2
Pygame的1.9.2pygame.error:文件是不是Windows BMP文件
我有一个显示一个简单的Python pygame的程序一个图像在屏幕上,这在我的IDE中运行时效果很好。问题是当尝试使用py2app我得到的错误使其成为一个独立的程序:
pygame.error:文件是不是Windows BMP文件
我做了一些研究,发现它可能是pygame或SDL_image.framework的错误,所以我重新安装了两个,我得到相同的错误。但是,当我使用BMP图像时,程序工作正常,但我无法使用图像格式,例如.png或.jpg。
window.py:
import pygame,sys
from pygame.locals import *
pygame.init()
size=[700,500]
screen=pygame.display.set_mode(size)
clock=pygame.time.Clock()
img = pygame.image.load("Images/img.png") # Error generated here
# -------- Main Program Loop -----------
while True:
# ALL EVENT PROCESSING SHOULD GO BELOW THIS COMMENT
for event in pygame.event.get():
if event.type == QUIT:
isRunning = False
pygame.quit()
sys.exit()
screen.blit(img,(300,300))
pygame.display.flip()
clock.tick(20)
如果它是任何使用的,这里是我的setup.py文件:
from setuptools import setup
APP = ['window.py']
DATA_FILES = [('', ['images'])]
OPTIONS = {'argv_emulation': True}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
问题解决方案2.7.2:
结果我的pygame文件已经损坏。为了解决这个问题,我用新的pygame文件替换了应用程序中的旧pygame文件。应用程序中的pygame文件夹位于“app.app/Contents/Resources/lib/python2.7/lib-dynload”。与此替换旧pygame的文件夹,并希望这将工作:
https://dl.dropboxusercontent.com/u/84011326/Youtube%20files/pygame.zip
其他的解决办法
我下载了Python版本2.7.5适用于Mac和这只是从固定不能够全部错误加载pygame调音台以便能够加载jpg和png图像。