Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fonts 加载字体文件时出错:data/calibri.fnt_Fonts_Libgdx - Fatal编程技术网

Fonts 加载字体文件时出错:data/calibri.fnt

Fonts 加载字体文件时出错:data/calibri.fnt,fonts,libgdx,Fonts,Libgdx,我在尝试加载字体文件时遇到此错误 加载字体文件时出错:data/calibri.fnt 我可能错过了一些非常简单(也很愚蠢)的东西,但在这么长的时间里,我一直在努力寻找答案。 这是我的示例代码- import com.badlogic.gdx.graphics.g2d.BitmapFont; font=新位图字体(Gdx.files.internal(“data/calibri_new.fnt”),true); 绘制字体(textBatcher,“abcd”,40,40) 我已将calibri.

我在尝试加载字体文件时遇到此错误

加载字体文件时出错:data/calibri.fnt

我可能错过了一些非常简单(也很愚蠢)的东西,但在这么长的时间里,我一直在努力寻找答案。 这是我的示例代码-

import com.badlogic.gdx.graphics.g2d.BitmapFont;
font=新位图字体(Gdx.files.internal(“data/calibri_new.fnt”),true);
绘制字体(textBatcher,“abcd”,40,40)

我已将calibri.fnt文件复制到文件夹数据下。(我没有使用calibri.png)。有人能帮忙吗

默认字体为Arial,字体大小为15,在我保持不变的情况下效果很好
font=新建位图字体()

错误如下所示-(我的声誉不足以发布图像:()

线程“LWJGL应用程序”com.badlogic.gdx.utils.GdxRuntimeException中的异常:加载字体文件时出错:data/calibri_new.fnt 位于com.badlogic.gdx.graphics.g2d.BitmapFont$BitmapFontData。(BitmapFont.java:971) 位于com.badlogic.gdx.graphics.g2d.BitmapFont.(BitmapFont.java:120) 位于com.badlogic.gdx.graphics.g2d.BitmapFont.(BitmapFont.java:113) 位于com.kilobolt.GameWorld.GameRenderer.(GameRenderer.java:81) 在com.kilobolt.Screens.GameScreen.(GameScreen.java:38) 在com.kilobolt.ZombieBird.ZBGame.create上(ZBGame.java:13) 位于com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:136) 位于com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114) 原因:com.badlogic.gdx.utils.GdxRuntimeException:无效字体文件:data/calibri_new.fnt 位于com.badlogic.gdx.graphics.g2d.BitmapFont$BitmapFontData。(BitmapFont.java:809)
…7更多

在Eclipse(或任何文本编辑器)中打开calibri.fnt。您应该注意:

  • 它只是一个文本文件(意味着它缺少位图字体所需的位图)
  • 它引用的文件(
    file=“calibri.png”
    )需要位于同一目录中
fnt文件通常只标识png文件中对应于每个字母的矩形


也复制png文件。

我以前也有同样的问题,因为我使用的是xml生成的fnt,libgdx只能处理文本fnt

下面是创建字体的代码:

BitmapFont font;
font = new BitmapFont(Gdx.files.internal("fonts/font.fnt"), Gdx.files.internal("fonts/font.png"), false);

确保文件夹中同时包含png和fnt。

谢谢Chase!我已将png文件复制到文件夹中。但是错误仍然存在。下面是我正在使用的代码行
font=new BitmapFont(Gdx.files.internal(“data/calibri_new.fnt”),true)
错误日志中有我在主题行中提到的错误。我还发现一个日志显示无效的字体文件:data/calibri_new.fnt。有人能帮忙吗!你从哪里得到这些文件或是如何生成它们的?你能发布它们或链接到它们吗?我正在使用angel code的位图字体生成器。从这里下载。我st调整了我的字体样式并保存为.fnt文件。这会自动为我生成一个.png文件。我已经将它们都放在了我的/data文件中。我还将错误的屏幕截图附加到我的问题上。fnt文件中的第二行(
common
)是什么样子的?