我设法修改了通过以下方式获得的 xml 文档:
PDDocumentCatalog docCatalog = _pdfDocument.getDocumentCatalog();
PDAcroForm acroForm = docCatalog.getAcroForm();
PDXFAResource xfa = acroForm.getXFA();
org.w3c.dom.Document documentXML = xfa.getDocument();
但是,当我要创建一个 COSBase 实例并将 xml 文档映射到其中时,出现了问题。我使用我在网上找到的以下命令:
COSStream cosout = new COSStream(new ScratchFile(new File("/Users/lgraglia/Desktop/")));
TransformerFactory.newInstance().newTransformer().transform(new DOMSource(documentXML), new StreamResult(cosout.createUnfilteredStream()));
或者:
StringWriter writer = new StringWriter();
TransformerFactory.newInstance().newTransformer().transform(new DOMSource(documentXML), new StreamResult(writer));
COSString aaa = new COSString(writer.toString());
但在这两种情况下,生成的 PDXFAResource 都有问题,并且生成的 pdf 文件已损坏。你能帮我解决这个问题吗?谢谢!