pdfbox:没有Za + Dingbats字体的U + 2714字形

时间:2019-06-28 07:55:31

标签: java pdfbox

如果我使用以下代码,则不会得到异常

pdPageContentStream.setFont(PDType1Font.ZAPF_DINGBATS, 10);
pdPageContentStream.beginText();
pdPageContentStream.newLineAtOffset(3, 4);           
pdPageContentStream.showText("\u2714");
pdPageContentStream.endText();

但是如果我使用下面的代码,则会得到异常

PDType0Font font = null;

try(InputStream input = getClass().getClassLoader().
getResourceAsStream("ttf/zapfdingbatsRegular.ttf" )){
font = PDType0Font.load( pdDocument, input, false);
}

pdPageContentStream.setFont(font, 10);
pdPageContentStream.beginText();
pdPageContentStream.newLineAtOffset(3, 4);
pdPageContentStream.showText("\u2714");
pdPageContentStream.endText();

我需要第二种实现方式才能将我的pdf验证为PDF / A。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

@mkl。您的评论对我很有帮助。我找到了另一个ttf文件,我意识到在新的ttf文件中,unicode是不同的(0033和0037)。所以现在我设法解决了这个问题。