6

我正在使用 BitmapFont 来呈现文本问题是我决定使用 TrueTypeFontFactory.createBitmapFont 方法来创建 BitmapFont,这样我就可以使用自己的字体而不是默认字体。文本渲染没有问题,除了它在 y 轴上翻转,在使用 TrueTypeFontFactory.createBitmapFont 方法之前,我只需创建一个 BitmapFont 并在构造函数中传递 true 以翻转它,但现在我使用的是 TrueTypeFontFactory 我不能那样做,在创建 BitmapFont 之后我似乎无法做到这一点,因为没有方法可以这样做。所以我想知道在这种情况下如何翻转字体?

4

3 回答 3

13

您可以尝试调用 font.setScale(1, -1); 创建后,但我不知道更好的方法。

于 2012-11-15T12:53:39.583 回答
2

您可以使用 Flip=true 函数的 FreeTypeFontParameter ( parameter.flip=true)默认为 false

    FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("font/font.ttf"));
    FreeTypeFontParameter parameter = new FreeTypeFontParameter();
    parameter.size = 12;
    parameter.flip=true;
    BitmapFont font = generator.generateFont(parameter); // font size 12 pixels 

https ://github.com/libgdx/libgdx/wiki/Gdx-freetype

于 2016-04-25T20:07:44.930 回答
1

BitmapFont构造函数中的布尔参数设置为 true:

//to load custom font:
font = new BitmapFont(Gdx.files.internal("data/fonts/font.fnt"), Gdx.files.internal("data/fonts/font.png"), true);
//to load default arial font:
font = new BitmapFont(true);
于 2015-02-23T10:16:25.603 回答