IText在PDF上编辑或删除图层

H全部,

我正在使用IText在PDF上添加文本图层。 现在我想编辑PDF上的现有图层,图层也仅由IText创建。 似乎IText没有这样的方法来支持。

我想到的另一种方法是删除现有的Layer并在其位置放置新图层。 IText也不支持似乎删除。 有什么办法吗?

谢谢你。

正如评论中所说,所讨论的层是iText确实称之为层的层,但实际上PDF版本的内容被称为可选内容组。

确实有一个实用程序类用于在iText Xtra包中删除这些层(不是extrajars,而是itext-xtra.jar): com.itextpdf.text.pdf.ocg.OCGRemover ,它在同一个包中使用类OCGParser

 /** * Class that knows how to remove OCG layers. */ public class OCGRemover { /** * Removes layers from a PDF document * @param reader a PdfReader containing a PDF document * @param layers a sequence of names of OCG layers * @throws IOException */ public void removeLayers(PdfReader reader, String... layers) throws IOException [...] } 

将该方法应用于PdfReader您显然必须保存更改,例如通过PdfStamper.