Python显示文本W /字体和颜色?

有没有一种方法,我可以使用python在pygame窗口上显示文本?

我需要显示一些更新的实时信息,而不是为我需要的每个字符创build一个图像。

我可以将文字移动到屏幕上吗?

是。 可以在pygame中绘制文本:

# initialize font; must be called after 'pygame.init()' to avoid 'Font not Initialized' error myfont = pygame.font.SysFont("monospace", 15) # render text label = myfont.render("Some text!", 1, (255,255,0)) screen.blit(label, (100, 100)) 

你可以通过使用pygame.font.Font设置字体path来使用自己的自定义字体

 pygame.font.Font(filename, size): return Font 

例:

 pygame.font.init() font_path = "./fonts/newfont.ttf" font_size = 32 fontObj = pygame.font.Font(font_path, font_size) 

然后使用fontObj.render和blit渲染字体到上面veiset的答案。 🙂

我在游戏中有一些代码可以显示实时比分。 它具有快速访问function。

 def texts(score): font=pygame.font.Font(None,30) scoretext=font.render("Score:"+str(score), 1,(255,255,255)) screen.blit(scoretext, (500, 457)) 

我在while循环中使用它来调用它:

 texts(score) 

我写了一个包装器,它将caching文本表面,只有在脏时才重新渲染。 googlecode上/ ninmonkey / nin.text /演示/