编译时如何包含字体?

时间:2015-06-02 14:25:43

标签: java netbeans

我有一个具有自定义字体的Java项目,当在其他计算机上编译时,字体不一样,因为我的字体没有用它编译。如何使用它进行编译以便在其他PC上运行?

此代码无法运行。在我的所有WindowOpened中输入它。

   try {
        InputStream istream = getClass().getResourceAsStream("/fonts/cs_regularttf");
        Font myFont = Font.createFont(Font.TRUETYPE_FONT, istream);
    } catch (FontFormatException fontFormatException) {
    } catch (IOException iOException) 

    {
    }

编辑:使用堆栈跟踪方法,这是我得到的代码。

java.io.IOException: Problem reading font data.
at java.awt.Font.createFont0(Font.java:1000)
at java.awt.Font.createFont(Font.java:877)
at projetfinal.frmMenu.<init>(frmMenu.java:56)
at projetfinal.ProjetFinal.main(ProjetFinal.java:20)

1 个答案:

答案 0 :(得分:0)

如果您使用getClass().getResourceAsStream(...),则会解释相对于当前包的给定路径(因此您必须将/path/to/your/classes/package/fonts中的字体放在resources/内{ 1}} NetBeans项目的目录。

否则您可以使用getClass().getClassLoader().getResourceAsStream()并省略包裹部分。