我想使用RGB或十六进制数字将字体更改为特定颜色。这就是我的主题。
private BitmapFont font;
这是我在initFonts()
课程中从create()
调用的game
方法:
public void initFonts() {
FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("fonts/Minecraft.ttf"));
FreeTypeFontGenerator.FreeTypeFontParameter params = new FreeTypeFontGenerator.FreeTypeFontParameter();
params.characters ="0123456789";
params.size = 150;
params.color.set(254,208,0,1); //I want to change the color into a custom rgb
font = generator.generateFont(params);
generator.dispose();
}
这使字体变为黄色。 254,208,0是一种橙色的黄色。我认为color.set
的作用是将您输入的值转换为可供选择的颜色之一,例如Colors.YELLOW
。如果我想要特定颜色,该怎么办?
答案 0 :(得分:2)
我通过将params.color.set
中的所有值与255f
分开来解决了这个问题,这意味着它最终会像这样工作:
params.color.set(254f / 255f, 208f / 255f, 0, 1);
这是因为他们希望它的值为0到1,而不是0到255.我希望这也有助于其他人面对这个愚蠢的问题。