0

我正在尝试在我的 Pygame 屏幕上渲染一些字体,但它从未出现过。我认为我的所有设置都正确,我的程序没有抛出任何错误,所以我不确定出了什么问题。这是我用来尝试创建文本的代码:

pygame.init()
pygame.display.set_caption("MyGame")
font = SysFont("Times", 24) #Create a new font using times if it exists, else use system font.
white = (255, 255, 255)

while True:  #Game loop
  label = font.render("Score: " + str(score), 1, white)
  self.surface.blit(label, (100, 100))
  # Do other game things....
  self.board.draw()
  pygame.display.update()
  self.clock.tick(60)

在我的初始化函数中:

def __init__(self):
    self.surface = pygame.display.set_mode((400, 500)) #Set dimensions of game window. Creates a Surface
    self.clock = pygame.time.Clock()
    self.board = Board(self.surface)  # Board is an object in my game

我究竟做错了什么?我已经查看了所有 Pygame 文档和 SO,但在我的代码中看不到任何错误。我也尝试过明确设置字体

font = pygame.font.Font("/System/Library/Fonts/Helvetica.dfont", 24)

但似乎没有任何效果。

4

1 回答 1

1

正如furas建议的那样,这个问题是由我在绘制后填充表面引起的。

于 2017-01-08T17:02:25.510 回答