首页 > 解决方案 > Pygame不会改变字体

问题描述

我正在尝试更改我的 Pygame 项目中使用的字体。所以我尝试使用系统字体,如下所示:

pygame.font.SysFont('arial', 24)

没有改变。Pygame 仍然使用默认的丑陋字体。我试图运行pygame.font.get_fonts(),但结果[None]在我的 Mac 上。

所以我尝试使用自定义字体,如下所示:

font_small = pygame.font.Font('fonts/Roboto-Regular.ttf', 24)

没有什么变化。仍然是相同的字体,并且没有异常说它无法打开文件。我什至尝试使用os.path.abspath()获取完整路径,但没有成功。

有什么建议吗?

更新

我创建了这个要点来测试所有的可能性。我成功地从 ttf 文件渲染字体。解决方案是将第二个参数antialias从更改FalseTrue

但我仍然不明白为什么我无法使用我的系统字体。

标签: pythonfontspygame

解决方案


我个人使用这个功能。不要忘记说明fontobj.rendermySurf.blit

def textePyGame(texte, x, y, mySurf):
    FONDBLEU  = (124, 210, 249, 100)
    ROUGE = (250, 0, 0, 255)
    fontobj = pygame.font.SysFont("freesansbold",22,bold=False,italic=False)
    text = fontobj.render(texte, True, ROUGE, FONDBLEU)
    larg, ht = fontobj.size(texte)
    mySurf.blit(text,(x, y))
    pygame.display.update()
    return ht

如果不是 pygame.font ,您可以测试字体的加载
: print('Attention, policys désactivées')

我希望它会帮助你


推荐阅读