使用AssetManager时,位图字体颠倒了。

3

今天我开始使用libGDX中的AssetManager来加载我的资源。在此之前,我已经在一个单独的类中加载了所有内容,但是我没有使用AssetManager
以下是我目前如何加载位图字体:

manager.load("font/good_neighbors_unity.fnt", BitmapFont.class);
[...]
bFont = manager.get("font/good_neighbors_unity.fnt", BitmapFont.class);

我的问题是,当我使用资产管理器加载位图字体时,它是倒置的。这是由于在我的正交相机中,y指向下方。在位图字体构造函数中有一个布尔值来翻转字体并避免这个问题。但是,在使用AssetManager加载时似乎没有这样的选项。可能有一个相对简单的解决方案,但我找不到任何允许我在之后翻转字体的方法。在使用AssetManager时有一种选项可以翻转位图字体吗?
2个回答

6

您可以使用参数对象将flip指定给资产管理器。

BitmapFontLoader.BitmapFontParameter bitmapFontParameter = new BitmapFontParameter();
bitmapFontParameter.flip = true;
manager.load("font/good_neighbors_unity.fnt", BitmapFont.class, bitmapFontParameter);

在匿名类中使用双大括号可能让您以一行代码的方式实现此操作:
manager.load("font/good_neighbors_unity.fnt", BitmapFont.class, new BitmapFontLoader.BitmapFontParameter(){{flip = true;}});

非常感谢。这就是我在寻找的 :) - The_Blog

1
很遗憾,您无法在创建后翻转字体,但是可以设置负比例来实现翻转效果。
只需使用:
    label.setFontScale(-1);

你也可以尝试使用label.setFontScaleXlabel.setFontScaleY

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