libgdx在恢复后无法正确渲染字体

7

我在使用libgdx开发安卓应用时遇到了字体问题。当我第一次打开应用时,字体可以正常显示。但是当我暂停应用,然后重新开始应用时,字体会显示错误。

这是我创建字体的方法。

FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("fonts/MainFont.ttf"));
LabelStyle ls = new LabelStyle();
ls.font = generator.generateFont(30);
ls.fontColor = new Color(1.0f, 1.0f, 1.0f, 1.0f);       
mPlay = new Label("Play", ls);      
mInstructions = new Label("How To Play", ls);
generator.dispose();

我的暂停/恢复方法中什么也没有,不确定是否应该在那里添加一些内容。

以下是前后的样子。

Before

enter image description here

2个回答

4
这似乎是LibGDX框架的已知问题。如果是这种情况,该漏洞在较新版本的框架中已解决。
更多信息请参阅官方问题跟踪器:https://github.com/libgdx/libgdx/issues/870 希望能对您有所帮助。

看起来就是这样了。他们说应该在0.9.9中修复,这也是我正在使用的版本。从那里链接过来的另一个线程有一些人说它现在可以工作,还有一些人说它仍然无法工作。看起来我现在可能可以通过重新加载字体来解决它。我会尝试一下,并查看它是否有效。 - user2128112
重新加载字体肯定会起作用,但问题现在应该已经解决了,可能不在0.9.9版本中,但你尝试过夜间构建吗?我总是建议使用夜间构建 :) - Daahrien

2
generator.dispose();

将此行代码移至dispose方法中,以确保字体被正确释放。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接