如何在LibGdx中缩放标签

Adr*_*her 1 java android libgdx

我正在尝试为游戏编写HUD,但我无法弄清楚如何正确缩放Label。我正在使用以下代码:

Label hpLabel = new Label("HP: ",new Label.LabelStyle(new BitmapFont(),Color.BROWN));
    table.add(hpLabel);
    viewport = new FitViewport(Gdx.graphics.getWidth()/ FacultyWars.PPM, Gdx.graphics.getHeight()/ FacultyWars.PPM, cam);
    stage = new Stage(viewport, batch);
    stage.addActor(table);
//other ellements added after this 
Run Code Online (Sandbox Code Playgroud)

HP标签在屏幕上非常大。我尝试在标签和表上使用setScale都没有用。任何帮助表示赞赏!谢谢

这是当前屏幕的图片https://gyazo.com/57c190a9d7516bb8b2256bf1a7d17b4c

Dra*_*raz 5

使用Label的setFontScale(float fontScale)方法

  • 它“有点”有效。我可以将其缩小到一定大小,但仍然太大,并且文本确实像素化。如果我尝试进一步缩小它,它就会消失。有任何想法吗? (2认同)

Mir*_*hir 5

只需将标签添加到组,然后将比例尺应用到组即可。

    Label label = new Label("hello", skin);
    Group group = new Group();
    group.addActor(label);
    group.setScale(2f, 2f);
Run Code Online (Sandbox Code Playgroud)

我只在动画结束时缩放带有标签的Groups,在动画结束时缩放比例为1。不应该缩放字体,因为它看起来像素化。例如,一个简单的按比例放大动画:

group.addAction(Actions.sequence(Actions.scaleTo(2f, 2f, 1f), Actions.scaleTo(1f, 1f, 1f)));
Run Code Online (Sandbox Code Playgroud)