【问题标题】:File is not a Windows BMP File文件不是 Windows BMP 文件
【发布时间】:2014-07-28 01:43:56
【问题描述】:

我目前正在使用 Python 2.7.7 和 Pygame 编写游戏。我在运行 OS X 10.9 的 Mac 上,我正在使用 Eclipse 和 PyDev 插件。在游戏中,我正在为游戏背景加载一个 PNG 文件。但是,每当我尝试时,它都会检测到该文件,但它会给我错误“pygame.error:文件不是 Windows BMP 文件”。每当我在能够加载 PNG 文件之前使用 Pygame 就可以了。我也尝试将图像导出为 JPG,但遇到了同样的错误。请注意,我知道那里有类似的问题,但是,这些解决方案中的大多数仅适用于 Windows。我试过运行这个问题中看到的“更新 Shell 配置文件”命令:pygame.error: File is not a Windows BMP file,但这也不起作用。感谢您的时间。这是我的代码:

import sys, pygame

def main():
    HEIGHT = 500
    WIDTH = 500

    window = pygame.display.set_mode((HEIGHT,WIDTH))
    pygame.display.set_caption("Asteroids")

    background = pygame.image.load("images/background.png")

    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()

        window.blit(background,(0,0))

        pygame.display.update()

if __name__ == "__main__":
    main()

【问题讨论】:

  • 你试过完全重新安装pygame吗?
  • 我有。我相信这是 pygame 的版本,但我可能错了。

标签: eclipse macos python-2.7 pygame pydev


【解决方案1】:

我不在mac上,但我有两个想法:

首先:我没有看到 pygame.init(),我知道它应该始终排在第一位。 第二:你可以试试:

background = pygame.image.load("images/background.jpg").convert()

这个 convert() 让我在过去有些头疼。 希望这会有所帮助。

【讨论】:

    【解决方案2】:

    我在 mac 上几天前遇到了同样的问题。 问题是

    1. 你应该让 pygame.image.get_extended() 返回 1。所以你可能需要一些图像库,比如 PIL

    2. 您的 pygame 可能已损坏,因此您最好重新安装 pygame。在 OSX 中,只需找出你的 python 站点包的路径并删除 pygame 文件夹。并通过 home-brew 或从网站重新安装 pygame。至于我,我的站点包的路径是 /Library/Python/2.7/site-packages

    3. 完成以上两点后,我成功让我的pygame运行png图片。

    【讨论】:

      猜你喜欢
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多