IRONSOFTWAREHOME

Hinzufügen von PDF-Lesezeichen und Gliederung in Java

Curtis Chau
Curtis Chau
Updated: 16. Juni 2026

Die Java-Bibliothek von IronPDF ermöglicht es Ihnen, Lesezeichen und Gliederungen programmgesteuert zu PDF-Dokumenten hinzuzufügen, über die BookmarkManager-Klasse, die sowohl einkalige als auch mehrschichtige Lesezeichenstrukturen mit anpassbaren Navigationspunkten unterstützt.

Schnellstart: PDF-Lesezeichen in Java hinzufügen
  1. Installieren Sie die IronPDF-Java-Bibliothek und setzen Sie Ihren Lizenzschlüssel
  2. Laden Sie Ihr PDF mit PdfDocument.fromFile()
  3. Holen Sie sich die BookmarkManager mit pdf.getBookmark()
  4. Fügen Sie Lesezeichen hinzu mit addBookMarkAtEnd("Title", pageNumber)
  5. Speichern Sie das PDF mit pdf.saveAs()
  1. 1Install IronPDF with Maven Central Repository

    > mvn install

  2. 2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    //:path=/static-assets/ironpdf-java/content-code-examples/how-to/bookmarks/quickstart.java
    PdfDocument pdf = PdfDocument.fromFile(Path.of("document.pdf"));
    BookmarkManager bookmarks = pdf.getBookmark();
    bookmarks.addBookMarkAtEnd("Chapter 1", 0);
    pdf.saveAs(Path.of("bookmarked.pdf"));
    Java
  3. 3Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
    arrow pointer

PDF-Lesezeichen verbessern die Benutzerfreundlichkeit und Navigation Ihrer Dokumente. Gliederungen bieten strukturierte Navigation innerhalb von PDFs und lassen Benutzer direkt zu wichtigen Abschnitten springen, ähnlich wie ein Inhaltsverzeichnis. Dies erweist sich als unerlässlich bei der Arbeit mit umfangreichen Dokumenten, Berichten oder Mehrkapitel-PDFs, die eine organisierte Navigation erfordern.

IronPDF vereinfacht die PDF-Bearbeitung in Java-Anwendungen. Die Lesezeichen-API bietet Ihnen einfache Methoden zum Erstellen benutzerdefinierter Lesezeichen in PDF-Dateien. Die Bibliothek integriert sich in Java-Anwendungen und unterstützt verschiedene PDF-Manipulationsfunktionen über Lesezeichen hinaus, einschließlich PDFs zusammenführen, Formulare erstellen und Wasserzeichen hinzufügen.

Was brauche ich, bevor ich anfange?

Bestätigen Sie vor der Implementierung von PDF-Lesezeichen, dass IronPDF in Ihrem Java-Projekt konfiguriert ist. Die Bibliothek erfordert Java 8 oder höher und integriert sich über Maven oder Gradle. Fügen Sie die IronPDF-Abhängigkeit zu Ihrer Projekt-Build-Datei hinzu. Für detaillierte Einrichtungshinweise beziehen Sie sich auf die Erste-Schritte-Übersicht.

Ein gültiger Lizenzschlüssel ist für die Entwicklung und den Einsatz in der Produktion erforderlich. Setzen Sie den Lizenzschlüssel zu Beginn Ihrer Anwendung, bevor Sie IronPDF-Methoden aufrufen. Für Informationen zu Lizenzierungsoptionen besuchen Sie den Lizenzierungsleitfaden.

Tipps: Alle Seitenindizes in IronPDF verwenden nullbasierte Nummerierung. Seite 1 Ihres Dokuments ist Index 0, Seite 2 ist Index 1, und so weiter.

Wie füge ich Gliederung und Lesezeichen zu einem PDF hinzu?

Die unten stehenden Beispiele verwenden dieses Beispiel-PDF, um die Erstellung von Gliederungen und Lesezeichen zu demonstrieren. Der Prozess umfasst das Laden eines vorhandenen PDF-Dokuments und die Verwendung von IronPDF's BookmarkManager, um Navigationselemente im gesamten Dokument hinzuzufügen.

Wie kann ich eine einzelne Ebene von Lesezeichen hinzufügen?

Eine flache Lesezeichenliste eignet sich für Dokumente mit einer klaren, nicht-hierarchischen Struktur: Berichte, Produktanleitungen oder Präsentationsdecks, bei denen jeder Abschnitt für sich allein steht. Nachdem das PDF über einen Dateipfad mit PdfDocument.fromFile() geladen wurde, rufen Sie das BookmarkManager-Objekt ab, um mit dem Hinzufügen von Lesezeichen zu beginnen.

Die Methoden addBookMarkAtEnd und addBookMarkAtStart fügen jeweils Einträge am Ende oder Anfang der Lesezeichensammlung hinzu. Diese Methoden bieten Ihnen Flexibilität bei der Organisation von Lesezeichen entsprechend der Struktur Ihres Dokuments. Jeder Eintrag benötigt einen Anzeigetitel und einen nullbasierten Seitenindex.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/bookmarks/single-layer.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.bookmark.BookmarkManager;

public class Main {
    public static void main(String[] args) throws IOException {
        // Set the license key for IronPDF
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");

        // Load the PDF file
        PdfDocument pdf = PdfDocument.fromFile(Path.of("NovelSample.pdf"));
        
        // Get BookmarkManager object to manage bookmarks
        BookmarkManager bookmarks = pdf.getBookmark();

        // Add bookmarks at the end of the bookmark collection
        bookmarks.addBookMarkAtEnd("Title Page", 0);
        bookmarks.addBookMarkAtEnd("Table of Contents", 1);
        bookmarks.addBookMarkAtEnd("Dedication Page", 2);
        bookmarks.addBookMarkAtEnd("First Page", 3);
        bookmarks.addBookMarkAtStart("Page 4", 6);

        // Save the modified PDF with bookmarks
        pdf.saveAs(Path.of("bookmarked.pdf"));
    }
}
Java

Mit dem PDF-Viewer oben checken Sie das Inhaltsverzeichnis in der oberen linken Ecke der meisten Browser, um alle hinzugefügten Lesezeichen zu sehen. Diese flache Lesezeichenstruktur bietet eine einfache Navigation für Dokumente mit einfachen organisatorischen Anforderungen.

Wie kann ich mehrere Ebenen von Lesezeichen erstellen?

Verschachtelte Lesezeichen sind die richtige Wahl für technische Dokumentationen, Forschungsberichte oder jedes Mehrkapitel-Dokument, bei dem Leser nicht nur zu Kapiteln, sondern auch zu Unterabschnitten innerhalb dieser Kapitel navigieren müssen. Beginnen Sie mit den gleichen flachen Lesezeichen, die im vorherigen Abschnitt erstellt wurden, und verwenden Sie dann insertBookmark, um Einträge auf neuen Ebenen hinzuzufügen.

Die Methode insertBookmark akzeptiert vier Parameter: den Lesezeichennamen, den Zielseiteindex, den übergeordneten Lesezeichennamen und den vorhergehenden Geschwister-Lesezeichennamen. Das Übergeben eines übergeordneten Lesezeichennamens erstellt einen untergeordneten Eintrag, der darunter geschachtelt ist. Wenn Sie den Geschwister-Parameter auf null setzen, wird der neue Eintrag als erstes Kind dieses Elternteils platziert.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/bookmarks/multi-layer.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.bookmark.BookmarkManager;

public class Main {
    public static void main(String[] args) throws IOException {
        // Set the license key
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
        
        // Load the PDF file
        PdfDocument pdf = PdfDocument.fromFile(Path.of("NovelSample.pdf"));

        // Get BookmarkManager object
        BookmarkManager bookmarks = pdf.getBookmark();
        
        // Add top-level bookmarks at the end
        bookmarks.addBookMarkAtEnd("Title Page", 0);
        bookmarks.addBookMarkAtEnd("Table of Contents", 1);
        bookmarks.addBookMarkAtEnd("Dedication", 2);

        // Insert second-layer bookmarks as children of existing entries
        bookmarks.insertBookmark("First Page", 3, "Table of Contents", null);
        bookmarks.insertBookmark("Second Page", 4, "Table of Contents", "First Page");
        bookmarks.insertBookmark("End of Sample", 7, "Title Page", null);
        bookmarks.insertBookmark("Fourth page", 6, "Table of Contents", "Second Page");

        // Save the modified PDF with nested bookmarks
        pdf.saveAs(Path.of("multiLayer.pdf"));
    }
}
Java

Das oben angezeigte PDF zeigt die Baumstruktur der von insertBookmark erstellten Lesezeichen. Erweitern Sie das Gliederungspanel, um zu überprüfen, wie sich jeder untergeordnete Eintrag unter seinem Elterneintrag schachtelt. Dieser geschichtete Ansatz eignet sich für Berichte mit Kapiteln, Unterkapiteln und Anhängen.


Wie kann ich vorhandene Lesezeichen aus einer PDF-Datei wiederherstellen?

Das Lesen von Lesezeichendaten aus einem PDF ist eine Voraussetzung, wenn Sie Dokumente aktualisieren möchten, ohne die gesamte Navigationsstruktur neu zu erstellen. IronPDF macht dies über das gleiche BookmarkManager-Interface zugänglich, das zum Hinzufügen von Lesezeichen verwendet wird. Laden Sie das PDF mit PdfDocument.fromFile(), greifen Sie auf das BookmarkManager zu und rufen Sie dann getBookmarks() auf, um alle obersten Lesezeichen abzurufen.

Verwenden Sie get(index), um über seine Position in der Liste auf ein bestimmtes Lesezeichen zuzugreifen. Die Methode getText() gibt das Anzeigeetikett des Lesezeichens zurück, während getPageIndex() die nullbasierte Seitennummer zurückgibt, auf die es abzielt. Untergeordnete Lesezeichen sind in der von getBookmarks() zurückgegebenen flachen Liste nicht enthalten; greifen Sie über die getChildren()-Methode jedes übergeordneten Lesezeichens auf sie zu.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/bookmarks/retrieve-bookmarks.java
import java.io.IOException;
import java.nio.file.Path;
import java.util.List;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.bookmark.Bookmark;
import com.ironsoftware.ironpdf.bookmark.BookmarkManager;

public class Main {
    public static void main(String[] args) throws IOException {
        // Set the license key
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
        
        // Load the PDF file with bookmarks
        PdfDocument pdf = PdfDocument.fromFile(Path.of("bookmarked.pdf"));

        // Retrieve the bookmark manager
        BookmarkManager bookmarks = pdf.getBookmark();
        
        // Retrieve list of all bookmarks (includes child bookmarks)
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();

        // Access a specific bookmark by zero-based index
        Bookmark bookmark = bookmarkList.get(2);
        
        // Print bookmark details
        System.out.println("Bookmark Title: " + bookmark.getText());
        System.out.println("Page Number: " + bookmark.getPageIndex());
        
        // Check if bookmark has children
        if (bookmark.getChildren() != null && !bookmark.getChildren().isEmpty()) {
            System.out.println("Number of child bookmarks: " + bookmark.getChildren().size());
        }
    }
}
Java
Hinweis:: Die Methode getBookmarks() gibt nur eine flache Liste der obersten Lesezeichen zurück. Um den vollständigen Lesezeichenbaum zu durchlaufen, rufen Sie getChildren() rekursiv für jedes Lesezeichen auf, das geschachtelte Einträge hat.

Dieses Abrufmuster ist nützlich, wenn Sie die Navigationsstruktur eines vorhandenen PDFs vor der Verteilung prüfen oder ein Tool erstellen möchten, das prüfen muss, ob erforderliche Abschnitte vor der Veröffentlichung korrekt mit Lesezeichen versehen sind.


Wie kann ich ein Lesezeichen in einen bestimmten Index einfügen?

Das Einfügen von Lesezeichen an einer bestimmten Stelle ermöglicht es Ihnen, vorhandene PDFs schrittweise zu aktualisieren und neue Abschnitte hinzuzufügen, ohne die gesamte Gliederung von Grund auf neu aufzubauen. Dies ist besonders nützlich, wenn PDFs in einer Pipeline generiert oder geändert werden und neuer Inhalt stromabwärts angefügt wird.

Rufen Sie die flache Lesezeichenliste mit getBookmarks() ab, wählen Sie das Ziel-Lesezeichen anhand seines Listenindex aus und rufen Sie dann addNextBookmark auf, um unmittelbar danach ein neues Geschwister einzufügen. Verwenden Sie addChildBookmark, um einen neuen Eintrag eine Ebene tiefer unter dem ausgewählten Lesezeichen zu platzieren. Beide Methoden akzeptieren einen Titelstring und einen nullbasierten Seitenindex.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/bookmarks/insert-at-index.java
import java.io.IOException;
import java.nio.file.Path;
import java.util.List;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.bookmark.Bookmark;
import com.ironsoftware.ironpdf.bookmark.BookmarkManager;

public class Main {
    public static void main(String[] args) throws IOException {
        // Set the license key
        License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
        
        // Load the PDF modified in the multi-layer example
        PdfDocument pdf = PdfDocument.fromFile(Path.of("multiLayer.pdf"));

        // Get the BookmarkManager
        BookmarkManager bookmarks = pdf.getBookmark();
        
        // Retrieve the flat bookmark list
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();
        
        // Select a bookmark at a specific index
        Bookmark bookmark = bookmarkList.get(5);
        
        // Insert a new bookmark after the selected entry
        bookmark.addNextBookmark("Fourth Page", 6);
        
        // Add a child bookmark under the selected entry
        bookmark.addChildBookmark("Section 1", 7);

        // Save the updated PDF
        pdf.saveAs(Path.of("specificIndex.pdf"));
    }
}
Java
Hinweis:: Beim Zusammenführen von zwei PDFs, deren Lesezeichen identische Namen teilen, kann die resultierende Lesezeichenliste unerwartetes Verhalten zeigen. Benennen Sie widersprüchliche Lesezeichen um, bevor Sie sie zusammenführen, um eine saubere Gliederung zu erhalten.

Die Methode addNextBookmark fügt den neuen Eintrag als Geschwister des ausgewählten Lesezeichens unmittelbar danach in die Liste ein. Die Methode addChildBookmark platziert den neuen Eintrag eine Ebene tiefer, unter dem ausgewählten Lesezeichen. Beide Methoden akzeptieren einen Titelstring und einen nullbasierten Seitenindex.

Was sind die nächsten Schritte für PDF-Lesezeichen in Java?

PDF-Lesezeichen bieten Benutzern einen direkten Navigationspfad durch komplexe Dokumente, ohne scrollen zu müssen. IronPDF's BookmarkManager behandelt den gesamten Bereich der Lesezeichenoperationen: Hinzufügen von flachen Eintragslisten, Erstellen von tiefen mehrstufigen Gliederungen, Abrufen bestehender Einträge und Einfügen an bestimmten Positionen.

Um weiterhin mit Dokumentstruktur- und Navigationsfunktionen zu arbeiten, erkunden Sie diese verwandten Ressourcen:

Starten Sie Ihre kostenlose Testversion, um Lesezeichen, Gliederungen und andere Navigationsfunktionen zu Ihrem Java-PDF-Workflow hinzuzufügen. Um eine Lizenz für den Produktionseinsatz zu erwerben, sehen Sie sich Lizenzierungsoptionen an.

Häufig gestellte Fragen

Wie kann ich in Java Lesezeichen zu einem PDF-Dokument hinzufügen?

Laden Sie Ihr PDF mithilfe von PdfDocument.fromFile(), dann rufen Sie pdf.getBookmark() auf, um den BookmarkManager zu erhalten. Verwenden Sie addBookMarkAtEnd("Titel", pageIndex), um jedes Lesezeichen mit Anzeigenamen und nullbasiertem Seitenindex hinzuzufügen, und speichern Sie dann mit pdf.saveAs().

Was sind die Voraussetzungen zum Hinzufügen von PDF-Lesezeichen in Java?

Sie benötigen Java 8 oder höher, die IronPDF-Bibliothek als Maven- oder Gradle-Abhängigkeit hinzugefügt und einen gültigen Lizenzschlüssel mit License.setLicenseKey() vor allen IronPDF-Aufrufen. Keine weiteren Tools oder Frameworks erforderlich.

Kann ich mehrstufige Lesezeichenhierarchien in PDFs erstellen?

Ja. Fügen Sie zuerst Lesezeichen der obersten Ebene mit addBookMarkAtEnd hinzu, dann rufen Sie insertBookmark(name, pageIndex, parentName, siblingName) auf, um untergeordnete Einträge unter einem übergeordneten Lesezeichen zu verschachteln. Geben Sie null als den Geschwisternamen an, um den neuen Eintrag als erstes Kind zu platzieren.

Was ist der Unterschied zwischen addBookMarkAtEnd und insertBookmark?

addBookMarkAtEnd fügt ein neues übergeordnetes Element am Ende der Lesezeichenliste hinzu. insertBookmark platziert ein Lesezeichen an einer spezifischen Position in der Hierarchie, indem ein übergeordneter Lesezeichenname und optional ein vorangehender Geschwister angegeben werden, was verschachtelte Umrisse ermöglicht.

Wie lese ich vorhandene Lesezeichen aus einem PDF in Java?

Rufen Sie pdf.getBookmark().getBookmarks() auf, um eine flache Liste von Lesezeichen der obersten Ebene zu erhalten. Greifen Sie über list.get(index) auf einzelne Einträge zu. Verwenden Sie bookmark.getText() für den Titel und bookmark.getPageIndex() für die nullbasierte Seitenzahl. Untergeordnete Lesezeichen sind über bookmark.getChildren() zugänglich.

Wie füge ich ein Lesezeichen nach einem bestimmten vorhandenen Lesezeichen ein?

Rufen Sie die Lesezeichenliste mit getBookmarks() ab, wählen Sie den Zieleintrag nach Index aus und rufen Sie bookmark.addNextBookmark("Titel", pageIndex) auf, um ein Geschwister unmittelbar danach einzufügen, oder bookmark.addChildBookmark("Titel", pageIndex), um einen neuen Eintrag darunter zu verschachteln.

What features does IronPDF provide beyond PDF bookmarking?

IronPDF supports a variety of PDF manipulation features such as merging PDFs, creating forms, adding watermarks, and many more functionalities that integrate with Java applications.

How do you insert a bookmark at a specific index in a PDF with IronPDF?

Use `addNextBookmark` to insert a bookmark immediately after a specific entry and `addChildBookmark` to place a new entry one level deeper under a selected bookmark.

Can IronPDF handle PDF generation and modification pipelines?

Yes, IronPDF allows for incremental updates to PDFs, making it suitable for pipelines where new content can be appended with appropriate bookmarks without rebuilding the entire document structure.

Where can I find more information about using IronPDF for Java?

You can explore additional resources and tutorials on the IronPDF website, which provide detailed examples for splitting PDFs, printing, adding annotations, and using the full range of IronPDF Java API features.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.

...
Weiterlesen

Bereit anzufangen?

Version:2026.6gerade veröffentlicht

Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
Java Maven-Bibliothek für PDF
Installieren mit Maven

Version: 2026.6

<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>ironpdf</artifactId>
   <version>2026.6.1</version>
</dependency>
https://central.sonatype.com/artifact/com.ironsoftware/ironpdf/2026.6.1
oder
Java PDF JAR
Herunterladen JAR

Version: 2026.6

Manuell in Ihr Projekt installieren

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

OR
bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
AWS-Logo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Azure (WebApps, Funktionen v3)
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Azure (WebApps, Funktionen v3)
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
Java Maven-Bibliothek für PDF
Installieren mit Maven

Version: 2026.6

<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>ironpdf</artifactId>
   <version>2026.6.1</version>
</dependency>
https://central.sonatype.com/artifact/com.ironsoftware/ironpdf/2026.6.1
oder
Java PDF JAR
Herunterladen JAR

Version: 2026.6

Manuell in Ihr Projekt installieren