我注意到当我使用opengl 2时,bitmapfont颜色不起作用 它总是显示我的字体黑色。 如何解决这个问题?
代码:
在create()
中BitmapFont font;
font = new BitmapFont(Gdx.files.internal("font/arial.fnt"),Gdx.files.internal("font/arial_0.png"),false);
font.setColor(Color.WHITE);
在render()
中font.draw(batch, "test", 10, 10);
输出为黑色测试。
答案 0 :(得分:1)
从png文件中将字体设为白色。字体颜色绘制在原始颜色的顶部。黑色的白色仍然是黑色。
答案 1 :(得分:1)
我的解决方案是停止使用setColor(Color.WHITE)
,而是使用setColor(1.0f,1.0f,1.0f,1.0f)
。我还发现batch.setColor(1.0f,1.0f,1.0f,1.0f)
同样有效。
答案 2 :(得分:0)
问题不在于png文件中的文字颜色是否已经是白色,而是背景颜色是黑色。我把它变成了透明的,它起作用了。 顺便感谢Lestat帮我解决了这个问题。
答案 3 :(得分:0)
如果您正在阅读本文,那么您可能遇到了我刚刚遇到的类似症状的问题,并且到达了此页面:
问题: 标签文字不会显示在黑色背景上,或者默认为黑色,您无法更改颜色。
解决方案我发现: 确保以32位深度导出字体,使用alpha输出白色。再试一次; et voila:
//create font
white = new BitmapFont(Gdx.files.internal("font/white.fnt"), false);
//create label with associated style
LabelStyle headingStyle = new LabelStyle(white, Color.WHITE);
heading = new Label(MainActivity.TITLE, headingStyle);