itext无效的字体类型,字体文件文件:/ C:.... ttf not found

时间:2017-10-17 08:54:50

标签: java itext

我正在尝试在我的itext pdf中加载特定字体。但我不断收到错误。 logo.png和OpenSans-Bold.ttf位于同一个文件夹中。但是,如果我尝试运行代码,则无法在位置C找到字体文件:/somepatch/core/target/classes/OpenSans-Bold.ttf。但如果我看那个文件夹,文件就在那里。

 private static final String LOGO_LOCATION = PdfBuilder.class.getClassLoader().getResource("logo.png").toString();
 private static final String FONT_FS_JOEY_BOLD = PdfBuilder.class.getClassLoader().getResource("OpenSans-Bold.ttf").toString();

我也试过googeling这个问题,有人说我需要使用getResourceAsStream。所以我用:

private static final String FONT_FS_JOEY_BOLD = PdfBuilder.class.getClassLoader().getResourceAsStream("OpenSans-Bold.ttf").toString();

这给了我一个java.lang.IllegalStateException:无效的字体类型。

字体没有错,因为

private static final String FONT_FS_JOEY_BOLD = "./src/main/resources/fonts/fs_joey-bold-webfont.ttf";

的工作原理。不幸的是,我不能使用这种方法,因为我需要在不同的包中构建pdf。 (而且我真的想知道前两个例子的问题是错误的)

0 个答案:

没有答案