python - 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
从更改False
为True
。
但我仍然不明白为什么我无法使用我的系统字体。
解决方案
我个人使用这个功能。不要忘记说明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('Attention, policys désactivées')
我希望它会帮助你
推荐阅读
- sql-server - 无法在我的 PC 上的 SQL Server 上运行作业
- excel - 使用 VBA 从已关闭的 Excel 工作簿中获取信息
- assembly - 如何在 Yocto 中编译 NASM 文件?
- javascript - 当前代码需要是 IIFE(自调用) - 代码工作并运行
- mysql - 有人可以解释我的触发器中的错误吗?
- reactjs - React Native Auth0 中 Android 的“YOUR_APP_PACKAGE_NAME”是什么?
- swift - DispatchGroup 做、尝试、抓住?
- pandas - AttributeError:“系列”对象没有属性“to_numeric”
- assembly - 有没有办法将 FF 的十六进制值存储在 LC3 的寄存器中
- javascript - 合并字符串中的重复项并用逗号附加值