我正在使用BitmapFont来呈现文本,但问题是我决定使用TrueTypeFontFactory.createBitmapFont方法创建BitmapFont,这样我就可以使用自己的字体而不是默认字体。文本呈现没有问题,只是在y轴上翻转了,以前我会创建一个BitmapFont并在构造函数中传递true以翻转它,但现在我正在使用TrueTypeFontFactory,我不能那样做,而且在创建BitmapFont之后我似乎也无法这样做,因为没有相应的方法。所以我想知道如何在这种情况下翻转字体?
在创建字体之后,您可以尝试调用font.setScale(1,-1);,但我不知道更好的方法。
您可以使用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
//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);