如何使用PDFBox 2.0查找和替换PDF文档中的文本,他们提取旧示例并且它的语法不再有效,所以我想知道它是否仍然可行,如果是的话最好的办法是。谢谢!
答案 0 :(得分:6)
您可以尝试这样:
c:\Windows\installer
答案 1 :(得分:1)
我花了很多时间为此提出解决方案并最终获得Acrobat DC订阅,以便我可以创建字段作为要替换的文本的占位符。在我的案例中,这些字段用于客户信息和订单详细信息,因此数据不是很复杂,但文档中充满了与业务相关的条件,并且布局非常复杂。
然后我就这样做了,这可能适合你。
private void update() throws InvalidPasswordException, IOException {
Map<String, String> map = new HashMap<>();
map.put("fieldname", "value to update");
File template = new File("template.pdf");
PDDocument document = PDDocument.load(template);
List<PDField> fields = document.getDocumentCatalog().getAcroForm().getFields();
for (PDField field : fields) {
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getKey().equals(field.getFullyQualifiedName())) {
field.setValue(entry.getValue());
field.setReadOnly(true);
}
}
}
File out = new File("out.pdf");
document.save(out);
document.close();
}
YMMV