Libgdx:我可以通过阅读文本文件在屏幕上绘制文字吗?

时间:2018-05-12 13:38:04

标签: libgdx draw

我希望我的程序能够通过从文本文件中读取来绘制字体(例如从文件中读取一行),是否有人知道这样做的方法?

1 个答案:

答案 0 :(得分:1)

是的,您可以通过阅读文本文件在屏幕上绘制文字。

以下是测试用例: 我有两个文件,一个是.txt,另一个是.json

enter image description here

public class MyGdxGame extends ApplicationAdapter {

    SpriteBatch batch;
    BitmapFont bitmapFont;
    String txtFileString;
    String jsonString;
    JsonValue jsonValue;

    @Override
    public void create () {

        bitmapFont=new BitmapFont();
        batch = new SpriteBatch();

        txtFileString = Gdx.files.internal("file.txt").readString();
        jsonString=Gdx.files.internal("file.json").readString();

        JsonReader jsonReader= new JsonReader();
        jsonValue=jsonReader.parse(Gdx.files.internal("file.json"));
    }

    @Override
    public void render () {
        Gdx.gl.glClearColor(1, 0, 0, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.begin();
        bitmapFont.draw(batch, txtFileString,10,380);
        bitmapFont.draw(batch, jsonString,10,300);
        bitmapFont.draw(batch,jsonValue.get("framework").asString(),10,180);
        bitmapFont.draw(batch,jsonValue.get("language").asString(),10,160);

        batch.end();
    }

    @Override
    public void dispose () {
        batch.dispose();
        bitmapFont.dispose();
    }
}

我的预期输出:

enter image description here