【问题标题】:Using multiple fonts in one Json skin在一个 Json 皮肤中使用多种字体
【发布时间】:2015-07-04 18:27:35
【问题描述】:

我正在为我的菜单使用一个皮肤,我想知道是否可以向这个皮肤添加几种字体,然后以编程方式选择要使用的字体。

目前我设置了一种字体并将其添加到 LabelStyle 中,如下所示:

"com.badlogic.gdx.graphics.g2d.BitmapFont": {
        "fontTest": { "file": "outline_test.fnt" }
    },

    "com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle": {
        "default": {
            "font": "fontTest", "fontColor": "white"
        }
    }, 

这意味着当我创建一个标签时,我需要做的是:

Label rating = new Label("Rating: ", skin);

这会选择默认设置的 LabelStyle,有没有办法引用我的 Json 文件中设置的 LabelStyles,以便我可以选择在我的 Java 代码中使用哪种样式?还是我需要创建一个单独的皮肤?

【问题讨论】:

    标签: java json libgdx bitmap-fonts


    【解决方案1】:

    是的,您可以在皮肤文件中添加多种字体样式

    假设您要创建一个名为“myStyleFontTest”的标签样式,它使用不同的字体

    "com.badlogic.gdx.graphics.g2d.BitmapFont": {
            "fontTest": { "file": "outline_test.fnt" },
            "myStyleFontTest": { "file": "myStyle.fnt" }
        },
    
        "com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle": {
            "default": {
                "font": "fontTest", "fontColor": "white"
            },
            "myLabelStyle" :  {
                "font": "myStyleFontTest", "fontColor": "red"
            }
        }, 
    

    现在当你创建一个新标签时,你所要做的就是

    Label testLabel = new Label(text, skin, "myLabelStyle")
    

    【讨论】:

    • 我想也许你把它弄混了,把 Style 放在 BitmapFonts 下?
    • 没关系,明白你的意思 :) 工作正常,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多