我正在尝试在 pygame 的打开屏幕中使用从互联网上获取的字体。这是我使用的函数,但无论我使用什么作为字体名称,它都不会改变显示的内容。使用 pygame.font.SysFont 后,它不再给出未找到错误。我想要的只是使用其他字体
def text_objects(text, font):
textSurface = font.render(text, True, WHITE)
return textSurface, textSurface.get_rect()
def message_display(text):
largeText = pygame.font.SysFont('Minecraftia.ttf',115)
TextSurf, TextRect = text_objects(text, largeText)
TextRect.center = ((HEIGHT/2),(WIDTH/2))
screen.blit(TextSurf, TextRect)
最佳答案
您应该使用freetype
模块而不是 font
模块。它是 font
的替代品,并且在各方面都更好。
两个模块都有两个用于表示字体的类:
SysFont
:从系统字体创建一个 Font 对象
Font
:从支持的字体文件创建新的 Font 实例。
在您的情况下,由于您想要从字体文件加载字体而不是使用系统字体,因此请使用 Font
类而不是 SysFont
。
关于python - 在pygame中使用不同的字体书写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54065329/