我正在使用libgdx编写游戏,并从教程中借用了skin.json(和相关文件)。
正在使用的字体(默认)在更密集的屏幕上以丑陋的方式缩放,因此我使用自己非常大的字体生成 - 在游戏本身中,我将其缩放到合理的大小(基本上我使用{{1} })。我现在使用的字体是前一种字体的3倍。
我更改了对skin.json文件中使用哪种字体的引用,因此,我的所有按钮,标题和其他内容都显示了大量字体。
有没有办法缩放.json文件中的字体?或者代码中的其他任何地方?皮肤没有BitmapFont.scale
功能,因此我无法创建缩放的BitmapFont并指定它)
答案 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);
面向未来的用户。