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 /演示/