0

我正在创建一个游戏,并使用paint.NET 制作了一张世界地图图像。我将它保存为 JPEG 文件,并尝试将其加载到 Pygame 框架中。这是我的代码:

    import pygame
    import sys
    from pygame.locals import *

    Surface = pygame.display.set_mode ((1000, 775)), 0, 32)
    pygame.display.set_caption ('World Map')
    white = (255, 255, 255)
    pygame.image.load ('WorldMap.jpg')
    while True:
        Surface.fill (white)
        WorldMap.blit(Surface, (900, 675))
        for event in pygame.event.get ():
            if event.type == QUIT:
                pygame.quit ()
                sys.exit(0)
         pygame.display.update()

我的错误是它告诉我它无法加载 WorldMap.jpg

4

3 回答 3

2

In the code you posted, the image isn't assigned to a variable and the blitting is backwards:

    pygame.image.load ('WorldMap.jpg')
    while True:
        Surface.fill (white)
        WorldMap.blit(Surface, (900, 675))

should be:

    WorldMap = pygame.image.load('WorldMap.jpg')
    while True:
        Surface.fill(white)
        Surface.blit(WorldMap, (900, 675))
于 2012-06-20T17:40:29.697 回答
0

无论出于何种原因,它都没有加载图像。以下是您可以尝试解决此问题的一些步骤:

  • 尝试在外部查看器中打开图像。如果您无法查看它,则它可能已损坏或存在权限问题。
  • 检查图像上的权限设置。
  • 确保图像与 python 脚本位于同一文件夹中
  • 确保图像实际上是 jpeg 图像。您是否可能将其保存为位图 (BMP),但在不更改格式的情况下将文件扩展名更改为 JPG?

除此之外,如果没有看到整个错误并知道您在每个步骤中发现了什么,我将无法提供太多帮助。

于 2012-06-20T04:56:40.067 回答
0

尝试指定 jpg 文件的完整路径。

如果仍然失败,请更新您的问题以包含您收到的完整错误。

于 2012-06-20T15:33:51.187 回答