我必须填写pdf表格(用于在线提交数据),该表格包含xfa字段并使用iText。我能够生成支持读者的pdf文档,但字段未填写。
请建议我如何才能让它发挥作用。
答案 0 :(得分:1)
所有你需要的是:
private void fillXmlInPdf(File xmlFile, File inputPdf, File outputPdf) throws IOException, DocumentException, FileNotFoundException, CsmartException {
PdfStamper stamper=null;
try {
PdfReader reader = new PdfReader(inputPdf.getAbsolutePath());
stamper = new PdfStamper(reader, new FileOutputStream(outputPdf), '\0', true);
AcroFields afields = stamper.getAcroFields();
XfaForm xfa = afields.getXfa();
xfa.fillXfaForm(new FileInputStream(xmlFile));
} catch (Exception e) {
e.printStackTrace();
}finally {
try {
stamper.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
这段代码很适合我...