我正在使用PDFBOX,它的文档似乎很少,所以我来这里寻求帮助。我正在尝试打印出我创建的pdf表单,其中字段由eclipse动态填充。我可以让它进行导入和打印,但是当我打印时,我设置的字段不会显示(尽管他们将它保存到HDD时会这样做)。有人能指出我在打印时设置可见的设置吗?我看到itext有类似的东西,我希望PDFBox也能做到。
这是我目前的代码。
PDDocument doc = null;
try{
doc = PDDocument.load("resources/orderForm.pdf");
PDDocumentCatalog docCatalog = doc.getDocumentCatalog();
PDAcroForm acroForm = docCatalog.getAcroForm();
PDField field = acroForm.getField("Orderer");
field.setValue("JohnTest");
} catch (IOException ie){
System.out.println(ie);
}
//doc.addPage(new PDPage());
try{
//doc.save("Empty PDF.pdf");
doc.silentPrint();
//doc.print();
doc.close();
} catch (Exception io){
System.out.println(io);
}
}
答案 0 :(得分:1)
找到了我的答案,不能用pdfbox来做,虽然替代方案同样简单。使用桌面打印文件!示例代码如下
public void printOrder(){
try {
File myFile = new File(finished);
//Desktop.getDesktop().open(myFile);
Desktop.getDesktop().print(myFile);
doc.close();
} catch (IOException ex) {
// no application registered for PDFs
}
}