初始化PDFont时抛出DamagedFontException(Apache PDFBox)

时间:2016-08-09 17:32:41

标签: java pdfbox

我使用Apache PDFBox 2.0.2和FontBox 1.8.5。我试图将文本写入PDF文档,但我一直得到同样的例外:

Caused by: java.lang.ClassNotFoundException: org.apache.fontbox.type1.DamagedFontException

在堆栈跟踪下面,它显示以下内容:

// Create new document and page
PDDocument doc = new PDDocument();
PDPage page = new PDPage();
doc.addPage(page);

PDFont font = PDType1Font.HELVETICA_BOLD;   // The exception is thrown here

// Write to document
PDPageContentStream stream = new PDPageContentStream(doc, page);
stream.beginText();
stream.setFont(font, 12);
stream.drawString(pdfText);
stream.endText();

我正在使用NetBeans,并且正确地为PDFBox和FontBox添加了JAR - 使用其功能的其他所有内容都可以正常工作。相关的代码段:

{{1}}

它实际上是PDFBox Hello World示例的一个释义副本,所以我无法理解问题所在。有什么建议吗?

1 个答案:

答案 0 :(得分:3)

  

我正在使用Apache PDFBox 2.0.2和FontBox 1.8.5。

...

  

并正确添加了PDFBox和FontBox的JAR

不,你没有正确添加它。使用PDFBox 2.0.2和FontBox 2.0.2,而不是1.8.5(两年前)。或者,下载包含两者的PDFBox应用程序。更好的是,使用maven来处理依赖关系。