我想在 Pyglet 中显示多个具有各种字体的文本标签。在这种情况下,我使用的是“Ubuntu”字体,粗体,有时是斜体。在这种情况下,我有Ubuntu-B.ttf
和Ubuntu-BI.ttf
作为字体文件。
按照说明的指示,我正在加载字体:
pyglet.font.add_file(font_filename)
然后使用它的面名(我硬编码“Ubuntu”,因为我看不到从字体文件中获取它的方法):
label = pyglet.text.Label(text="Hello", font_name="Ubuntu", font_size=16)
不幸的是,Pyglet 字体系统似乎只注册了第一个具有该面名的字体Ubuntu
,并且它将它用于字体的所有实例,斜体或其他。
所以如果我先加载Ubuntu-BI.ttf
,那么所有的用途Ubuntu
都是斜体。如果我Ubuntu-B.ttf
先加载,那么所有使用都是非斜体粗体,即使我在稍后阶段加载斜体字体也是如此。
我看不到在运行时清除或删除加载字体的明显方法。有没有办法处理这个?