更改皮肤中的字体大小

时间:2013-11-30 15:27:52

标签: java android libgdx skin

我正在使用libgdx编写游戏,并从教程中借用了skin.json(和相关文件)。

正在使用的字体(默认)在更密集的屏幕上以丑陋的方式缩放,因此我使用自己非常大的字体生成 - 在游戏本身中,我将其缩放到合理的大小(基本上我使用{{1} })。我现在使用的字体是前一种字体的3倍。

我更改了对skin.json文件中使用哪种字体的引用,因此,我的所有按钮,标题和其他内容都显示了大量字体。

有没有办法缩放.json文件中的字体?或者代码中的其他任何地方?皮肤没有BitmapFont.scale功能,因此我无法创建缩放的BitmapFont并指定它)

3 个答案:

答案 0 :(得分:8)

Libgdx在2015年4月改变了这一点,因此设定的答案不再适用。花了一点时间才找到答案,所以我想我会把它留给别人,因为这个答案首先出现在谷歌。

this.getSkin().getFont("default-font").getData().setScale(0.33f,0.33f);

答案 1 :(得分:5)

文档说任何获取都将返回实际对象的句柄。因此,变化将持续存在。

所以我将skin.json中的字体更改为指向我的新字体。

然后我使用了这段代码

this.getSkin().getFont("default-font").setScale(0.33f, 0.33f);

将'default-font'(在skin.json中定义)缩放到我想要的比例(在我的例子中是0.33f)

答案 2 :(得分:3)

截至2017年,我不得不使用

skin.getFont("default-font").getData().setScale(0.5f);

面向未来的用户。