【发布时间】:2015-07-21 18:19:37
【问题描述】:
有没有一种方法可以在不删除 PDF/A 标准化的情况下删除 PDF/A 文档上的 XMP 元数据?
我发现使用
PdfReader reader = new PdfReader(src);
PdfDictionary dict = reader.getCatalog();
dict.remove(PdfName.METADATA);
dict.remove(PdfName.PROPERTIES);
reader.removeUnusedObjects();
同时删除 XMP 和 PDF/A。有没有办法在保留标准的同时删除 XMP 或将 PDF/A 重新引入已处理的文档?
谢谢。
【问题讨论】:
-
PDF/A 需要一定数量的 XMP 元数据。不过,您可能想要删除某些部分。你想丢弃哪些部分?
-
@mkl 嗨,说以下“2015-07-20 16:56:13 XMD2001E xmp(3:1): XMP property 'form' with namespace 'oracle.com/igbu/page_breaks/1.0#' 的程序是没有定义的 ”。我需要删除所有 oracle 的东西。
-
在这种情况下,您最好阅读 XMP 文件,使用一些 xmp 库(或一些 XML 库)对其进行操作,然后将操作后的数据写回 PDF。
-
@mkl 这是我目前的想法。我目前正在使用 PDFBox 读取 XML 并尝试替换它。