pdfbox - 无法从pdf中捕获修改后的值

时间:2016-05-12 15:42:23

标签: pdfbox

我需要在JXBrowser上打开PDF并让用户修改PDF上的值,保存后,我应该能够读取修改后的值并保存到数据库。

我的问题是,我无法从pdf中获取修改后的值,它始终从pdf(acroForm.getField(field name);)发回原始值。如果有任何其他方法可以帮助我解决这个问题。

我使用的是pdfbox 2.0.1

感谢您的帮助。

谢谢, 普拉萨德

UPDATE1: 添加我在我的应用程序中使用的示例代码

PDDocument PDFDoc = PDDocument.load(complaintform.pdf);

LoggerProvider.setLevel(Level.OFF);
Base64Encoder b64 = new Base64Encoder();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PDFDoc.save(baos);
String pdfHTML = "<HTML><BODY style=\"width:100%; height:100%\" > <embed  style=\"width:100%; height:100%\" src=\"data:application/pdf;base64,"+b64.encode(baos.toByteArray())+"\"type=\"application/pdf\"></BODY></HTML>";

Browser browser = new Browser();
BrowserView browserView = new BrowserView(browser);
this.add(browserView, BorderLayout.CENTER);
browser.loadHTML(pdfHTML);



save()
{
    PDDocumentCatalog docCatalog = PDFDoc.getDocumentCatalog();
    PDAcroForm acroForm = docCatalog.getAcroForm();
    PDField field = acroForm.getField("last");

    String modifiedValue = field.getValueAsString();
}

0 个答案:

没有答案