如何在java中从jar加载嵌入式字体作为InputStream?

时间:2013-01-07 09:45:58

标签: java exception fonts jar embedded-resource

如果我从Eclipse运行应用程序,那么一切都完成了。但如果将它导出到jar我会得到一个异常。

java.io.IOException: Problem reading font data.
at java.awt.Font.createFont(Unknown Source)

Here is the package tree

enter image description here

我的代码(在SzervizPrint.java文件中):

InputStream istream = getClass().getResourceAsStream("/resources/SerpentineBolditalic.ttf");
Font myFont = Font.createFont(Font.TRUETYPE_FONT, istream);
myFont = myFont.deriveFont(36.0f);
lblNewLabel.setFont(myFont);

1 个答案:

答案 0 :(得分:6)

SerpentineBolditalic.ttf

应该是:

SerpentineBoldItalic.ttf 

(资本'我')

虽然本地文件系统可能不区分大小写,但getResource(String)肯定是。