Ich werde dich nur davor warnen, dass du vielleicht enttäuscht bist. iText ist nicht wirklich als Parser gedacht. Es ist wirklich mehr für die Schaffung völlig neue PDF-Dokumente, aber Sie können einen Schlag auf sie nehmen.
Um mit iText zu starten, können Sie das vorhandene PDF-Dokument nicht ändern. Was Sie können tun, ist jedoch, um eine Kopie mit den zusätzlichen Funktionen, die Sie wollen. (Wenn jemand anderes besser weiß, bitte lassen Sie mich wissen, das macht mich verrückt.)
Was Sie tun möchten, ist ein PdfReader-Objekt aus einem Eingabestream auf Ihrer Quelldatei zu erstellen. Erstellen Sie dann ein PdfCopy-Objekt (das ist nur ein erweiterter PdfWriter, mit dem Daten aus einer vorhandenen Quelle bequemer abgerufen werden können) für Ihr Ziel.
Soweit ich das beurteilen kann, können die Lesezeichen überhaupt nicht von iText bezogen werden. Eine andere Bibliothek wird möglicherweise benötigt. Ich denke, jpedal kann die Fähigkeit haben, sie zu extrahieren (es kann sie als XML-Dokument erhalten, das Sie dann analysieren müssen, um zu bekommen, was Sie wollen.) Wie auch immer Sie sie erhalten, können Sie sie dann zu java.util hinzufügen. Liste, und legen Sie diese Liste als Gliederung für PDFCopy fest. Die Lesezeichen selbst sind nur HashMaps mit bestimmten Schlüsseln. Ich bin mir nicht sicher, was alle Werte sind, aber sie beinhalten "Titel", "Aktion" (was scheint zu sein, wo Sie angeben würden, dass dies ein benannter Bestimmungsort ist, obwohl ich nicht weiß, was dieser Wert wäre) und "URI" (wird verwendet, wenn es sich um eine externe Verbindung handelt - ich vermute, dass dies den Namen des benannten Ziels angeben würde, mit dem Sie verlinken). Auch hier sind die Details schwer zu finden.
Dann iterieren Sie über die Seiten des Lesers und importieren Sie jede Seite in die PdfCopy. this page kann Ihnen helfen.
Entschuldigung, ich bin nicht hilfreicher für Sie. Viel Glück.
P.S. Wenn jemand anderes von einem besseren Tool weiß, das entweder (L) GPL oder BSD lizenziert ist, würde ich gerne davon hören.
Danke, das gibt mir genug, um mit voranzukommen. –