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

Dén*_*oli 8 java fonts jar exception embedded-resource

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

java.io.IOException: Problem reading font data.
at java.awt.Font.createFont(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

这是包树

在此输入图像描述

我的代码(在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);
Run Code Online (Sandbox Code Playgroud)

And*_*son 6

SerpentineBolditalic.ttf
Run Code Online (Sandbox Code Playgroud)

应该:

SerpentineBoldItalic.ttf 
Run Code Online (Sandbox Code Playgroud)

(资本'我')

虽然本地文件系统可能不区分大小写,getResource(String)但绝对是.