Slick2D字体不起作用
我有Slick2D库并用Java制作游戏。 我一直在想,只是一个简短的问题,你如何在Graphics对象上设置字体以用不同的字体绘制。 我不能让它发挥作用。 我认为这与AngelCode有关,但是需要一些不是’.tff’的格式,所以我不知道。
所以你能告诉我你是怎么做到的吗?
对不起,但这个答案不过是简短的
您可以使用天使代码的BMF字体工具,它使位图字体文件具有存储字符图像的字形图像,以及描述图像文件的文本文件(仅限Windows,Herio.jar类似,并且包含在光滑,但它有时只工作,反复撞击我)
-
在此处获取BMF字体并使用随附的Windows安装程序进行安装。 完成后,使用GUI选择字体,大小等。(请注意,您必须为每个大小和字体制作1个字体/ glyh图像对)然后突出显示包含您要使用的字符的框,注意光滑仅支持最多256个(我认为)字符。
-
您需要更改一些导出设置,以便光滑识别文件。 转到文件 – >导出选项并更改“位通道”(我认为这就是它所谓的)A – >字形R,G和B – > 1。 将预设设置为自定义,将纹理设置为.png文件,并完成配置。
-
导出新创建的字体文件[file – > save bitmap font as](是的,它将在相应的数据目录中创建一个字形图像(.png)和一个扩展名为.fnt的文本描述符文件)。
-
使用AngelCodeFont constrcutor对其进行编码:
fnt = new AngelCodeFont("LOCATION OF .fnt FILE", new Image("LOCATION OF .png GLYPH IMAGE");
然后你可以直接用它绘制:
fnt.drawString(float x, float y, "TEXT TO DISPAY");
或者你可以
将当前图形字体设置为AngelCodeFont并直接通过图形类绘制。
GraphicsObject.setFont(fnt); GraphicsObject.drawString("THIS WLL DRAW IN THE ANGEL CODE FONT");
希望这会有所帮助:D
更多信息,请参阅API文档: http : //slick.cokeandcode.com/javadoc/