代码:
import pygame
pygame.init()
WIDTH = 800
HEIGHT = 480
screen = pygame.display.set_mode((WIDTH,HEIGHT))
block = pygame.sprite.Sprite()
block.image = pygame.image.load('stone.png')
newblock = pygame.transform.scale(block, (64, 64))
newblock.rect = newblock.image.get_rect()
newblock.group = pygame.sprite.GroupSingle(newblock)
newblock.group.draw(screen)
pygame.display.update()当我尝试用pygame.transform.scale缩放图像时,它给出了这个错误:
Traceback (most recent call last):
File "C:/pygame/program.py", line 8, in <module>
newblock = pygame.transform.scale(block, (64, 64))
TypeError: must be pygame.Surface, not Sprite发布于 2015-07-27 15:52:05
错误消息说明了一切。pygame.transform.scale的第一个参数需要是一个Surface,但您需要传递一个Sprite。
我猜你想要这样的东西:
import pygame
pygame.init()
WIDTH = 800
HEIGHT = 480
screen = pygame.display.set_mode((WIDTH,HEIGHT))
img = pygame.image.load('stone.png')
block = pygame.sprite.Sprite()
block.image = pygame.transform.scale(img, (64, 64))
block.rect = block.image.get_rect()
group = pygame.sprite.GroupSingle(block)
while True:
#TODO: event handling
group.draw(screen)
pygame.display.update()https://stackoverflow.com/questions/31644510
复制相似问题