如何在andEngine中使用字体和文本?

时间:2012-07-16 13:24:51

标签: android andengine

这就是我尝试这样做的方式:

fontTextureAtlas = new BitmapTextureAtlas(1024, 1024, TextureOptions.BILINEAR_PREMULTIPLYALPHA);
font = FontFactory.createFromAsset(fontTextureAtlas,this,"times.ttf",45f,true,Color.WHITE);
getEngine().getTextureManager().loadTexture(fontTextureAtlas);

然后,在代码中:

Text text = new Text(10,10, font,"Some text");
scene.attachChild(text);

我所看到的就是:

black blocks instead of text

此外,我尝试使用new Font(fontTextureAtlas,Typeface.DEFAULT,45f,true,Color.WHITE);初始化font,但结果几乎相同。

有谁知道我做错了什么?

3 个答案:

答案 0 :(得分:10)

尝试在font.load();

之后添加getEngine().getTextureManager().loadTexture(fontTextureAtlas);

如果不起作用,请尝试

getEngine().getFontManager().loadFont(font);

答案 1 :(得分:3)

这对我有用

FontFactory.SetAssetBasePath("fontfolder/");

mFont = FontFactory.createFromAsset(mEngine.getFontManager(),
            mEngine.getTextureManager(), 256, 256, TextureOptions.BILINEAR,
            activity.getAssets(), "QUARTZMS.TTF", 32f, true,
            Color.YELLOW_ARGB_PACKED_INT);
    mFont.load();

然后我添加mText = new Text(25, 25, mFont, "Some Text",getVertexBufferObjectManager());

答案 2 :(得分:2)

我在andengine中写了一篇关于文本的博客文章,可能有助于http://stuartmct.co.uk/2012/07/16/andengine-creating-and-using-text/