在我的程序中,我创建了一些不同大小的不同文本,而不是每次我想使用不同大小时创建新字体,我认为我可以创建一个字体列表,其中每个索引都是该字体大小。例如,font[50] 就是文本大小 50。
但是,当我尝试使用这种方式渲染文本时,我收到错误,该对象没有 .render 函数。
font = [[pygame.font.SysFont('Times New Roman', i)] for i in range(200)]
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
elif pygame.key.get_pressed()[K_ESCAPE]:
pygame.quit()
pygame.draw.rect(screen, '#FFFFFF', pygame.rect.Rect(0, 0, screen_width, screen_height))
screen.blit(font[50].render("Hi", False, '#FFFFFF'), (screen_width / 2, screen_height / 2))
pygame.display.flip()
我添加了打印语句来检查字体的内容,它确实看起来像预期的 200 种字体的列表,但是 .render 命令拒绝工作。