Pobieram najnowszą wersję libgdx 1.6 i nie mogę rozwiązać problemu z wyśrodkowaniem tekstu BitmapFont. Wcześniej w wersji 1.54 użyłem metody getBounds (), aby znaleźć szerokość tekstu.
Podziel się swoimi rozwiązaniami, dzięki
Pobieram najnowszą wersję libgdx 1.6 i nie mogę rozwiązać problemu z wyśrodkowaniem tekstu BitmapFont. Wcześniej w wersji 1.54 użyłem metody getBounds (), aby znaleźć szerokość tekstu.
Podziel się swoimi rozwiązaniami, dzięki
Odpowiedzi:
Był post wyjaśniający zmiany, ale nie jest łatwy do znalezienia. Link znajdował się w dzienniku zmian wersji 1.5.6: http://www.badlogicgames.com/wordpress/?p=3666
Link do zmian czcionek był następujący: http://www.badlogicgames.com/wordpress/?p=3658
private static GlyphLayout glyphLayout = new GlyphLayout();
private BitmapFont fontA = new BitmapFont(), fontB = new BitmapFont();
// Set text and font each time you want to calculate bounds.
glyphLayout.setText(fontA, "my string");
fontA.draw(batch, glyphLayout, x + glyphLayout.width / 3, y + glyphLayout.height / 3);
y += glyphLayout.height;
glyphLayout.setText(fontB, "different font");
fontB.draw(batch, glyphLayout, x + glyphLayout.width / 3, y + glyphLayout.height / 3);
getBounds()
funkcję z libgdx v1.5.5 BitFont.java