Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

TrueType Fonts in libGDX

Does anyone know how I can use a TTF font in libGDX? I have looked around and have seen things about StbTrueTypeFont but it doesn't seem to be in the latest release.

EDIT: I found the StbTrueType font stuff, the jar file is located in the extensions directory. I've added it to my project. Now I just need to figure out how to use it. Any examples?

like image 558
Alex_Hyzer_Kenoyer Avatar asked Feb 28 '12 17:02

Alex_Hyzer_Kenoyer


People also ask

How do I use TTF in Libgdx?

You need gdx-stb-truetype-natives. jar and gdx-stb-truetype. jar . Add those both to your main project and make sure to add them to your build path.


1 Answers

Yes you will definitely need to add the gdx-stb-truetype jars to your project as you stated in your edit. Here is how you will use it, pretty straighforward...

First you need to declare your BitmapFont and the characters you will use...

BitmapFont font; public static final String FONT_CHARACTERS = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789][_!$%#@|\\/?-+=()*&.;,{}\"´`'<>"; 

Then you need to create the font...

font = TrueTypeFontFactory.createBitmapFont(Gdx.files.internal("font.ttf"), FONT_CHARACTERS, 12.5f, 7.5f, 1.0f, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); font.setColor(1f, 0f, 0f, 1f); 

You can play with the arguments you pass to createBitmapFont() and you will see what they do.

Then to render the font you would do it as you normally do...

batch.begin(); font.draw(batch, "This is some text", 10, 10); batch.end(); 
like image 156
DRiFTy Avatar answered Sep 28 '22 12:09

DRiFTy