libgdx-freetype带字母间距的新lib问题

问题描述 投票:0回答:2

我有一个旧版FreeType lib的游戏。出于某种原因,我更新了lib但是有一些改变,所以我做了。但是我的字母间距有问题。我给你看了2张图片,之前和之后:enter image description here enter image description here

有一些代码(最后一张图片):

asset loader.Java:

public static BitmapFont font12;
public static GlyphLayout font12G = new GlyphLayout();

font12 = generator2.generateFont(parameterText); 
        font12.setColor(Color.BLACK);
        font12.getData().setScale(0.04f, 0.04f);

public static String leaderboards = "LEADERBOARD";

game render.Java:

private void drawLeaderMenu() {
        AssetLoader.font12G.setText(AssetLoader.font12, AssetLoader.leaderboards);
        AssetLoader.font12.draw(batcher, AssetLoader.leaderboards, (GameScreen.gameWidth / 4)
                - (AssetLoader.font12G.width) / 2, circle.getR().y + 20);
    }

我不明白是什么问题

android libgdx freetype
2个回答
2
投票

尝试在FreeTypeFontParameter中设置大小而不是字体缩放。

FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("BUBBLEGUM.TTF"));
FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();

parameter.color = Color.WHITE;
parameter.magFilter = Texture.TextureFilter.Linear; // used for resizing quality
parameter.minFilter = Texture.TextureFilter.Linear;

parameter.size=20; 
font=generator.generateFont(parameter);
font.getRegion().getTexture().setFilter(Texture.TextureFilter.Linear, Texture.TextureFilter.Linear);
font.setColor(1.0f, 0.0f, 0.0f, 1.0f);

 generator.dispose();   // Don't forget to dispose

0
投票

尝试设置font.setUseIntegerPositions(false),默认为true。

© www.soinside.com 2019 - 2024. All rights reserved.