我试图更改Pygame项目中使用的字体。 所以我尝试使用系统字体,如下所示:
pygame.font.SysFont('arial', 24)
没有任何改变。 Pygame仍然使用默认的丑陋字体。
我尝试运行pygame.font.get_fonts()
,但结果是我的Mac上的[None]
。
所以我尝试使用自定义字体,如下所示:
font_small = pygame.font.Font('fonts/Roboto-Regular.ttf', 24)
没有任何改变。仍然是相同的字体,没有例外,说它无法打开文件。我甚至尝试使用os.path.abspath()
来获得完整的路径,但没有成功。
任何消化?
更新
我创建了this gist来测试所有可能性。
我成功地从ttf文件渲染字体。解决方案是将第二个参数antialias
从False
更改为True
。
但我仍然不明白为什么我无法使用我的系统字体。
答案 0 :(得分:0)
我个人使用这个功能。不要忘记说明 fontobj.render 和 mySurf.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('注意,政策désactivées')
我希望它能帮到你