我正在尝试使用从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/

10-15 08:44