我在iText中创建轮廓时查看了示例代码 . 但是,它们涉及PdfWriter的新实例 .

我有现有的代码,使用PdfStamper创建PDF注释 . 我试图使用stamper.getWriter(),所以我可以获得对getRootOutline()的引用,但它返回null .

甚至将压模对象设置为stamper.setViewerPreferences(PdfWriter.PageModeUseOutlines);

或PdfReader对象没有做到这一点 .

我在这里错过了别的什么吗?或者这些不是正确的类?如果可能,我不希望重新打开文件只是为了使用示例代码中的类创建书签 .

这就是我的压模和读者对象的创建方式 .

PdfReader reader = new PdfReader(srcPdf);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(outputPdf));