Libgdx如何翻转一个BitmapFont?

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

13

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


2

您可以使用FreeTypeFontParameter的flip=true函数(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


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);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接