好的,我有这个。
calibri.draw(FBLA_Game.spriteBatch, "Rooftop Defender",0 ,0 );
无论如何,这段代码......我需要将文本置于中心位置。而不是0,我会这样:
calibri.draw(FBLA_Game.spriteBatch, "Rooftop Defender",Gdx.graphics.getWidth()/2 ,Gdx.graphics.getHeight()/2 );
但这不是我想要的。这是它写词的起点的中心。那么对于宽度,我需要减去正在写的单词的宽度,但我无法弄清楚如何获得正在编写的“屋顶卫士”的宽度。
感谢您的帮助, 亚历
答案 0 :(得分:0)
在LibGDX的新版本(> 1.6 )中,正在使用GlyphLayout类处理 BitmapFont ,您可以使用它来计算渲染的未来宽度串
//out of render() method! this call is expensive
GlyphLayout glyphLayout = new GlyphLayout(calibri, "Rooftop Defender");
...
//render()
float glyphLayoutWidth = glyphLayout.width;