Slick2D 字体不起作用

2023-12-07

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

那么你能告诉我你是怎么做到的吗?


您可以使用angel code的BMF字体工具,它可以制作位图字体文件,其中包含存储字符图像的字形图像,以及描述图像文件的文本文件(仅限Windows,Herio.jar类似,包含在slick中,但它仅有时有效,反复让我崩溃)

  1. 获取 BMF 字体here并使用附带的 Windows 安装程序进行安装。完成此操作后,使用 GUI 选择字体、大小等(请注意,您必须为每种大小和字体制作 1 个字体/字形图像对),然后突出显示包含要使用的字符的框,注意slick 仅支持最多 256 个(我认为)字符。

  2. 您需要更改一些导出设置,以便 slick 能够识别这些文件。转到文件 -> 导出选项并更改“位通道”(我认为这就是它的名称)A -> 字形 R、G 和 B -> 1。将预设设置为自定义,将纹理设置为 .png 文件,然后配置就完成了。

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

  4. 使用 Angel Code Font 构造函数对其进行编码:

    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/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Slick2D 字体不起作用 的相关文章

随机推荐

  • 根据对象字段对 ArrayList 进行排序 [重复]

    这个问题在这里已经有答案了 可能的重复 对联系人数组列表进行排序 我正在存储DataNode中的对象ArrayList The DataNode类有一个名为的整数字段degree 我想找回DataNodeNodeList 中的对象按升序排列
  • 如何在 XSLT 1.0 中执行 for-each-group 而无需键/Muenchian 分组

    我目前正在使用 XSLT 并尝试按属性的子字符串对节点进行分组 唯一的问题是我在无法使用 xsl key 的环境中工作 我想知道对诸如以下内容进行分组的最佳方法
  • div 没有正确从左向右移动

    下面是我的代码片段 我用它来将 div 从左向右移动 https jsfiddle net nf6pqbr0 1 u go click function var stop stopdiv offset left var obj docume
  • 如何使用 Node.js 在 MongoDB 中使用cursor.forEach()?

    我的数据库中有大量文档 我想知道如何遍历所有文档并更新它们 每个文档都有不同的值 答案取决于您使用的驱动程序 我知道的所有 MongoDB 驱动程序都有cursor forEach 以一种或另一种方式实施 这里有些例子 节点 mongodb
  • 将图像水平居中在闪亮的 FluidRow 中

    是否可以在闪亮的 ui FluidPage 中将三个图像排成一行居中 并将每个图像的宽度固定为 300px 要得到 我的一个想法是使用 splitLayout 并以某种方式插入图像作为窗口宽度的函数 但我不确定如何实现这一点 我知道您可以使
  • java.lang.OutOfMemoryError:在 OOM 之前无法分配分配

    实际上 我正在尝试创建一个包含 n 个多媒体文件的应用程序 其中包括图像和视频 我的应用程序大小约为34MB 我的资产规模约为60mb 当我在普通设备中加载应用程序时 我们没有遇到任何问题 但是具有2K resolutions例如Nexus
  • 如何使用“findstr”匹配IP地址?或者 Windows 中任何其他批处理方法

    正如标题所说 我想在windows中批量匹配ip地址 请告诉我该怎么做 我看到 findstr 可以与正则表达式匹配 例如 0 9 但是 findstr 怎么能匹配它出现的情况一到三次 Since findstr的正则表达式支持有点 过时
  • 强制文件下载 PDF“打开方式”框显示它是 Firefox 文档?

    我正在尝试强制下载 PDF 文件 一切正常 唯一的问题是 当它显示 下载框 时 它说它是 Firefox 文档 实际上应该说 Adobe Acrobat 文档 查看图像 下面是我正在使用的代码 1 从gmail强制下载盒子 效果很好 2 从
  • 在 Matlab 中在网格上绘制 3D 条形图

    我有一个矩阵 A 包含 50 行和 4 列 并且条目填充有整数 我的兴趣是根据这些数据构建堆叠的 3D 条形图 但是 使用 bar3 A stacked 创建一行 50 个条形图 而我希望将这些条形图绘制在大小为 5 垂直 x 10 水平
  • Oct 文件在 Octave 3.6.4 或 4.0.0 下运行,但不能同时运行

    我安装了两个版本的 Octave 通过包管理器 Linux Mint Debian 安装的版本 3 6 4 以及从源代码编译的版本 4 0 0 我在 octaverc 文件指向的文件夹中还有许多 oct 文件 我的问题是 4 0 0 版本无
  • 使用列表理解的带有谓词的自定义过滤器函数

    我需要开发自己的过滤功能 类似于filter在 Haskell 中工作 但使用列表理解和谓词 所以我会放lcFilter gt 3 1 2 3 4 5 6 10 444 3 在 ghci 中 它会打印所有大于 3 的数字 我的代码基于我擅长
  • 使用自定义类作为 Q_PROPERTY

    我有两节课TestA and TestB TestA延伸QObject 我已经设置了一些Q PROPERTY就这样 Q PROPERTY QString a string READ getString WRITE setString Q P
  • 如何从链接列表中抓取 HTML 表格

    我正在尝试使用 XML 包抓取一些表 选举数据 浏览后 我发现如何使用以下方法抓取单个网址 library XML url lt http www elecciones2011 gob ar paginas paginas dat99 DP
  • 空手道框架语言支持[重复]

    这个问题在这里已经有答案了 是否可以使用 KARATE 框架编写 C 实用程序 我已经使用 Java 编写了用于自动化 API 的实用程序函数 但现在我想用 C 编写实用程序函数 有没有办法做到这一点 空手道实际上是语言中立的并且使用Ghe
  • 无限循环错误EditText

    首先看我的代码 这些都在我的活动中 EditText text1 text2 Are defined corretly not problem text1 addTextChangedListener new MyTextWatcher o
  • android ffmpeg opengl es 渲染电影

    我正在尝试通过 NDK 渲染视频 以添加一些 sdk 中不支持的功能 我正在使用 FFmpeg 来解码视频 并可以通过 ndk 进行编译 并使用this作为起点 我修改了该示例 而不是使用 glDrawTexiOES 来绘制纹理 而是设置了
  • 为什么不在每次 Flask 启动时都生成密钥呢?

    使用会话时 Flask 需要一个密钥 在我见过的每个示例中 密钥都是以某种方式生成的 然后存储在源代码或配置文件中 永久保存的原因是什么 为什么不在应用程序启动时简单地生成它呢 app secret key os urandom 50 密钥
  • 在单独的线程中运行 Windows 窗体

    我正在处理在表单中运行控件 但是表单本身对我来说没有任何价值 我本质上希望表单运行任务并返回一个值 但是为此我想使用 AutoResetEvent 之类的东西仅在函数调用完成时返回 这显然会阻塞表单线程并使其不可能为了完成任务 我为我的项目
  • IOError: [Errno 13] 权限被拒绝:

    我构建此代码是为了专门识别 XML 文件负载并从这些文件中提取坐标 这是我的代码 from xml etree import ElementTree as ET import sys string os arcgisscripting gp
  • Slick2D 字体不起作用

    我有 Slick2D 库并用 Java 制作游戏 我一直想知道 只是一个简短的问题 如何在 Graphics 对象上设置字体以使用不同的字体进行绘制 我无法让它发挥作用 我认为它与 AngelCode 有关 但需要某种不是 tff 的格式