我需要从链接注释中清理PDF文档.这是我的代码模板:
public static void main(String[] args) throws IOException, COSVisitorException {
try (PDDocument doc = PDDocument.load("input.pdf")) {
final List<PDPage> pages = doc.getDocumentCatalog().getAllPages();
for (PDPage page : pages) {
List<PDAnnotation> annotations = page.getAnnotations();
for (PDAnnotation ann : annotations) {
if (ann instanceof PDAnnotationLink) {
PDAnnotationLink link = (PDAnnotationLink) ann;
PDAction action = link.getAction();
if (action instanceof PDActionURI) {
final PDActionURI linkUri = (PDActionURI) action;
if (linkUri.getURI().contains("www.example.com")) {
// TODO remove the link
}
}
}
}
}
doc.save("output.pdf");
}
}
Run Code Online (Sandbox Code Playgroud)
但我找不到永久删除链接的方法并将这些更改保存到新文件,链接仍然存在.
如何保存页面修改?