LibGDX:不显示特殊字符

时间:2015-10-09 18:59:22

标签: java libgdx special-characters bitmap-fonts

您好我尝试显示特殊字符“äöü”。我使用I18NBundle存储strigs。但问题不应该在这里,如果我把它打印到控制台

System.out.println(bundle.get(key));

显示“äöü”。

如果我试图从LabelStyle中获取字形:

    BitmapFont.Glyph glyph = labelStyle.font.getData().getGlyph('ö');
    Gdx.app.log(String.valueOf(glyph.id), glyph.toString());

我收到NullPointerException。

我确实从Hiero-4获取了我的BitmapFont并将png打包到TexturePacker中。

TextureAtlas background = manager.get(Const.BACKGROUNDS_PATH);
skin_bg = new Skin(Gdx.files.internal(Const.BACKGROUNDS_STYLE_PATH), background);

"com.badlogic.gdx.graphics.g2d.BitmapFont": {
    "arial": { "file": "images/arial.fnt" }
}
编辑:我删除了lwjgl版本:2.9.2它不应该是因为这个lib。 Bug是在2.9.1之后

如何测试BitMapFont是否可以显示特殊字符

1 个答案:

答案 0 :(得分:0)

"com.badlogic.gdx.graphics.g2d.BitmapFont": {
    "arial": { "file": "images/arial.fnt" }
}

这只是使字体在皮肤上可用,您需要将其添加到实际样式中,以便使用它:

com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle: {
    default: { font: arial, fontColor: white }
}