2017-03-15 31 views
0

我試圖爲我的遊戲代碼一個HUD,但我無法弄清楚如何縮放標籤正確,我用這個代碼:如何調整一個標籤在LibGdx

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 

惠普標籤是巨大的屏幕上。我嘗試在標籤和桌子上使用setScale無濟於事。任何幫助表示讚賞! 由於

這裏是當前屏幕https://gyazo.com/57c190a9d7516bb8b2256bf1a7d17b4c

+1

的可能的複製[添加Actions.scaleTo()來在LibGDX一個標籤(http://stackoverflow.com/questions/42404452/add-actions- scaleto-a-label-in-libgdx) – Tenfour04

+0

答案似乎並不適用於我,即使問題類似。 –

+0

你能澄清「似乎沒有工作」?否則難以幫助。 – Tenfour04

回答

1

使用setFontScale(浮動fontScale)標籤

+0

它「有點」的作品。我可以將其縮小到一定的尺寸,這個尺寸仍然太大,文字真的像素化。如果我試圖進一步縮小它,它只會消失。有任何想法嗎? –

+0

也許你應該只使用較小的紋理?你有沒有需要這個大牌?爲了避免紋理被像素化,您應該更改此紋理的濾鏡設置 – Draz

2

的方法只需將標籤添加到組,那麼秤的適用於該組的一個畫面。

Label label = new Label("hello", skin); 
    Group group = new Group(); 
    group.addActor(label); 
    group.setScale(2f, 2f); 

我只在動畫標籤規模組,其中在動畫結束規模爲1。每個人都應該無法擴展字體,因爲它看起來像素化。例如,一個簡單的比例放大縮小動畫:

group.addAction(Actions.sequence(Actions.scaleTo(2f, 2f, 1f), Actions.scaleTo(1f, 1f, 1f))); 
+0

請考慮用代碼示例擴展您的答案。 –

+0

@湯姆阿蘭達完成! –