无法更改Libgdx中的字体颜色

时间:2012-10-06 18:08:06

标签: java fonts libgdx

我正在尝试更改我在应用程序中使用的字体颜色。但无论我尝试什么,字体仍然是黑色的。 我使用Hiero字体工具制作了这个字体。

我的代码是这样的:

SpriteBatch batch = new SpriteBatch();
BitmapFont font = new BtimapFont( Gdx.files.internal(MainAssets.pathToAssets + "font/comic.fnt"), Gdx.files.internal(MainAssets.pathToAssets +  "font/comic.png"), false );

在我绘制字体的渲染中:

batch.begin();
font.setColor(1, 0, 0, 1);
font.draw(batch, "Hello World!", 0, 0);
batch.end();

我发现了一个与我类似的问题,但仍然没有解决方案。

http://code.google.com/p/libgdx/issues/detail?id=370

4 个答案:

答案 0 :(得分:21)

您需要设置32位深度的输出格式和带alpha的白色(如果您使用的是BMFont工具,请不要了解Hiero)。

答案 1 :(得分:17)

如果您的字体是黑色的,那么它将不会着色(这是您在调用setColor时所做的)。尝试再次以白色在Hiero中生成字体。

答案 2 :(得分:13)

你可以用这个

font.setColor(Color.BLUE);

最简单的方式

答案 3 :(得分:0)

最新的libGDX存在同样的问题,在我的情况下,它与字体图像格式有关。有关详细信息,请查看以下消息:

font.setColor method not working after libGDX update to latest version