java - Slick2D - 如何使用字体

标签 java fonts slick2d

我正在用字体编写游戏,但遇到了问题。 尽管我尝试了一切,但我不知道如何使用字体。 您还能解释一下什么是字形吗? 如果需要的话,从哪里获取 .fnt 文件?

最佳答案

很多东西要么不再使用,要么不再需要。基本上你只需要一个 Graphics实例,并使用类似 drawString 的内容方法。您还可以使用setFontGraphics对象来设置要用于渲染的字体。

您可以获得 Graphics来自您的 GameContainer 的实例,然后渲染它。如果您想查看示例,this filerender 方法在我的 github 项目中,有一些行将调试信息渲染到屏幕上(fps、内存使用情况等)。代码的相关部分是:

if (ConfigValues.renderSystemInfo) {
  g.setColor(new Color(50, 50, 50, 180));
  g.fillRect(0, 0, 300, 70);
  g.setColor(Color.white);
  g.drawString("MEM total(used):   " + (Runtime.getRuntime().totalMemory()/1000000) + "(" + ((Runtime.getRuntime().totalMemory()-Runtime.getRuntime().freeMemory())/1000000) + ") MB", 10, 25);
  g.drawString("Ped. history size: " + (peds.size()*peds.get(0).getMovementHistory().size()) + " nodes", 10, 40);
}

仅供引用,字形,至少在概念上,只是字体中字符的视觉表示。例如,字母 a 在给定字体中的外观就是该字母的字体的字形。大写和小写字母有不同的字形(aA),这使得大写和小写字母在字体中显示不同。

关于java - Slick2D - 如何使用字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9708623/

相关文章:

java - 人口随时间变化

java - java 中向下转型的良好实践

java - 比较文件,然后删除字符较大的文件

java - Jenkins CLI 连接被拒绝

java - gradle processResources 似乎正在破坏字体文件

javascript - 有没有一种方法可以使用 material ui @next React 将不同的字体添加到 Typography 中的不同属性

c# - 如何使用winforms在c#中获取richtextbox中某一行的字体大小

java - 无法绘制缓冲图像

java - 如何解决图书馆的密封违规问题?密封违规 : package org. lwjgl.opengl 被密封

java - 查找我的鼠标是否在Java中的矩形内