当前位置: 首页 > 面试题库 >

Slick2D字体不起作用

满言
2023-03-14
问题内容

我有Slick2D库,并使用Java做游戏。我一直想知道,只是一个简短的问题,如何在Graphics对象上设置字体以绘制不同的字体。我不能使它工作。我认为这与AngelCode有关,但是需要某种不是’.tff’的格式,所以我不知道。

那你能告诉我你怎么做吗?


问题答案:

您可以使用天使代码的BMF字体工具,该工具使用带有存储字符图像的字形图像的位图字体文件,以及描述该图像文件的文本文件(仅适用于Windows,Herio.jar与之相似,并且包含在光滑代码中)。仅在某些时候有效,反复使我崩溃)

  1. 在此处获取BMF字体,然后使用随附的Windows Installer进行安装。完成此操作后,使用GUI选择字体,大小等(请注意,您必须为每个大小和字体制作1个font / glyh图像对),然后突出显示包含要使用的字符的框,请注意光滑仅支持256个(我认为)字符。

  2. 您需要更改一些导出设置,以便平滑地识别文件。转到文件->导出选项,然后更改“位通道”(我想这就是它的名字)A->字形R,G​​和B->一个。将预设设置为custom,将纹理设置为.png文件,即可完成配置。

  3. 在适当的数据目录中导出新创建的字体文件[文件->将位图字体另存为](是的,它将生成字形图像(.png)和扩展名为.fnt的文本描述符文件)。

  4. 使用AngelCodeFont构造函数对其进行编码:

fnt = new AngelCodeFont("LOCATION OF .fnt FILE", new Image("LOCATION OF .png GLYPH IMAGE");

然后您可以直接用它绘制:

fnt.drawString(float x, float y, "TEXT TO DISPAY");

或者你可以

将当前图形字体设置为AngelCodeFont并直接通过graphics类进行绘制。

GraphicsObject.setFont(fnt);
GraphicsObject.drawString("THIS WLL DRAW IN THE ANGEL CODE FONT");

希望这对您有所帮助:D

有关更多信息,请参见API文档:http :
//slick.cokeandcode.com/javadoc/



 类似资料:
  • 字体始终显示默认字体。 我的字体存储在资源/字体中。我尝试使用其他字体,并对字体进行重新编码。此外,PixlUI库并没有解决这个问题。 主要活动。Java语言 activity\u main。xml

  • 对不起,如果这是一个愚蠢的问题,但我导入了一个字体存储在我的电脑到一个CSS文件,虽然它在Chrome工作,但它不在Microsoft Edge或Internet Explorer。我没有任何其他浏览器,所以我不能检查那些,我想知道是否有人会知道为什么。 当我进入sources时,这是显示的(还不让我嵌入图像,我很新):sources Linotte文件夹所在的文件夹与CSS工作表所在的文件夹在同

  • 我正在尝试导入一个新的字体来实现它到我的p元素的css中。但是我导入的字体由于某种原因无法显示。这是我的代码: null null 你知道是什么导致了这个问题吗?

  • 问题内容: css font-size <12px的元素在Google Chrome中不起作用-保持字体大小12px。 我该怎么办? 我的Google Chrome浏览器使用默认设置。我的版本是4.0.249.89。我正在使用Windows XP。 您可以将以下代码粘贴到您的Google Chrome浏览器中进行测试: 来自不同浏览器的结果: 问题答案: 按照以下样式禁用自动调整。

  • 问题内容: 问题: 我知道这个问题已经问了很多遍了,但是我没有找到任何好的答案。 所以我有一些游戏实体,现在检查碰撞的最佳方法是什么? 链接: 游戏(完成) 代码说明: 我有一个世界一流的实体列表: 我使用以下代码更新它们(仅在视图范围内): 所以现在我想检查实体更新方法中是否存在冲突。 我尝试将其作为更新方法: 这是当前的昆虫方法: 当前,相交方法始终返回true。但为什么? 问题答案: 实现此

  • 我使用irport 3.1.0,在从ireport生成预览时,所有样式(粗体、斜体)都可以工作,但在从web应用程序调用时,所有内容都以纯文本形式出现。