Pedro Romano Barbosa
Pedro Romano Barbosa

Reputation: 647

Scale a Bitmapfont in LibGDX

How can I scale a Bitmapfont object in LibGDX? It seems the method setScale is no longer available.

Upvotes: 20

Views: 23889

Answers (4)

Hitesh Sahu
Hitesh Sahu

Reputation: 45072

You can assign Font Size to FreeTypeFontParameter while loading font

 FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("Lobster.ttf"));
    FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();
    parameter.size = 50; // font size
     BitmapFont lobster= generator.generateFont(parameter);
    generator.dispose();

Upvotes: 0

Nasser Tahani
Nasser Tahani

Reputation: 735

As Fish mentioned, it is recommended to use freetype generator as following:

FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("fonts/timesBold.ttf"));
FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();

Then change the font size in parameter and initialize BitmapFont:

fontParameter.size = 18;
BitmapFont font = fontGenerator.generateFont(fontParameter);

It is also needed to include libgdx-freetype.so in armeabi folder of your project.

Upvotes: 4

Fish
Fish

Reputation: 1697

It is not recommended to scale Bitmap font, because it looks pixlated when enlarged(which I believe is ugly)

It is recommended to use freetype generator for resizing your fonts

If you still want use bitmapFont Tenfour04 is correct

Upvotes: 14

Tenfour04
Tenfour04

Reputation: 93599

Use bitmapFont.getData().setScale(float x, float y).

Upvotes: 38

Related Questions