如何使用libGDX中的Hiero工具显示德语Umlaut(ä,ö,ü)?

时间:2018-08-29 17:26:19

标签: libgdx

我正在libGDX中使用Hiero工具,以便在我的libGDX游戏中打包和使用字体。我的游戏也应该有德语版本,但是我在运行游戏时找不到能显示德语Umlaute(ä,ö,ü)的字体。有什么解决办法吗?

1 个答案:

答案 0 :(得分:2)

我使用Hiero来添加几乎所有字符(包括中文字符),并且必须具备以下条件:

  • 源字体必须包含这些字符(您可以使用系统字体进行测试)
  • 源字体必须是.tff(或系统字体)。如果您使用其他任何内容,则某些字符可能不会显示
  • 渲染应为“自由类型”
  • 您需要将这些字符添加到新字体(“示例文本”字段)
  • 使用单选按钮“字形缓存”显示新字体是否适合 一页(如果没有,则增加页面的宽度或高度)。我不 记住它是否是强制性的,但我能记住的是 我将它们放在一页上时可以避免的一些问题(请检查视图 组合,如果只有第1页的选项就可以完成)

Example chinese. Works with any character

然后在您的代码中使用以下命令加载字体(先保存字体,它将创建两个文件,一个png和一个fnt):

BitmapFont fontCN;
Texture textureCN = new Texture(Gdx.files.internal("data/Fonts/cn.png"), true);
textureCN.setFilter(Texture.TextureFilter.MipMapLinearNearest, Texture.TextureFilter.Linear);

fontCN = new BitmapFont(Gdx.files.internal("data/Fonts/cn.fnt"), new TextureRegion(textureCN), false);