Hinzufügen von PDF-Lesezeichen und Gliederung in Java

This article was translated from English: Does it need improvement?
Translated
View the article in English

Die Java-Bibliothek von IronPDF ermöglicht das programmgesteuerte Hinzufügen von Lesezeichen und Gliederungen zu PDF-Dokumenten mithilfe der Klasse BookmarkManager und unterstützt sowohl ein- als auch mehrschichtige Lesezeichenstrukturen mit anpassbaren Navigationspunkten.

als-Überschrift:2(Schnellstart: PDF-Lesezeichen in Java hinzufügen)

  1. Installieren Sie die IronPDF-Java-Bibliothek und legen Sie Ihren Lizenzschlüssel fest
  2. Laden Sie Ihre PDF-Datei mit PdfDocument.fromFile()
  3. Holen Sie sich den BookmarkManager mit pdf.getBookmark()
  4. Lesezeichen hinzufügen mit addBookMarkAtEnd("Title", pageNumber)
  5. Speichern Sie die PDF-Datei mit pdf.saveAs()

```java :title=Schnellstart PdfDocument pdf = PdfDocument.fromFile(Path.of("document.pdf")); BookmarkManager bookmarks = pdf.getBookmark(); bookmarks.addBookMarkAtEnd("Kapitel 1", 0); pdf.saveAs(Path.of("bookmarked.pdf"));


PDF-Lesezeichen verbessern die Benutzerfreundlichkeit und die Navigation in Ihren Dokumenten erheblich. Gliederungen bieten eine strukturierte Navigation innerhalb von PDFs, die es den Benutzern ermöglicht, wie bei einem Inhaltsverzeichnis direkt zu wichtigen Abschnitten zu springen. Diese Funktionalität erweist sich als unerlässlich bei der Arbeit mit langen Dokumenten, Berichten oder PDF-Dateien mit mehreren Kapiteln, die eine organisierte Navigation erfordern.

IronPDF vereinfacht die PDF-Bearbeitung in Java-Anwendungen. Die Lesezeichenfunktionalität bietet einfache Methoden zur Erstellung von benutzerdefinierten Lesezeichen in PDF-Dateien. Die Bibliothek fügt sich nahtlos in Java-Anwendungen ein und unterstützt verschiedene PDF-Bearbeitungsfunktionen, die über das Setzen von Lesezeichen hinausgehen, darunter [Zusammenführen von PDFs](https://ironpdf.com/java/how-to/java-merge-pdf-tutorial/), [Erstellen von Formularen](https://ironpdf.com/java/how-to/create-forms/) und [Hinzufügen von Wasserzeichen](https://ironpdf.com/java/how-to/custom-watermark/).

<div class="hsg-featured-snippet">
    <h2>So fügen Sie PDF-Lesezeichen und Gliederungen hinzu</h2>
    <ol>
        <li><a href="https://ironpdf.com/java/#download-modal">Java-Bibliothek installieren, um Lesezeichen zu PDFs hinzuzufügen</a></li>
        <li>Utilize the <strong>`PdfDocument`</strong> class to load an existing PDF file in Java</li>
        <li>Create and customize the bookmarks with the <strong>`BookmarkManager`</strong> class</li>
        <li>Use `addBookMarkAtEnd` to add bookmarks to specific pages of the PDF</li>
        <li>Speichern Sie das PDF-Dokument mit der neuen Gliederung und den Lesezeichen</li>
    </ol>
</div>

## Was brauche ich, bevor ich anfange?

Bevor Sie PDF-Lesezeichen implementieren, sollten Sie sicherstellen, dass IronPDF in Ihrem Java-Projekt richtig konfiguriert ist. Die Bibliothek erfordert Java 8 oder höher und kann leicht mit Maven oder Gradle integriert werden. Sie müssen die IronPDF-Abhängigkeit zu der Build-Datei Ihres Projekts hinzufügen. Detaillierte Anweisungen zur Einrichtung finden Sie in der [Übersicht für den Einstieg](https://ironpdf.com/java/docs/).

Sie müssen auch sicherstellen, dass Ihr Lizenzschlüssel korrekt konfiguriert ist, da IronPDF für die Entwicklung lizenziert werden muss. Umfassende Informationen über die Lizenzierungsoptionen und die Implementierung finden Sie im [Lizenzierungsleitfaden](https://ironpdf.com/java/get-started/license-keys/). Legen Sie den Lizenzschlüssel zu Beginn Ihrer Anwendung fest, bevor Sie die IronPDF-Funktionen nutzen.

## Wie füge ich Gliederung und Lesezeichen zu einer PDF-Datei hinzu?

Für dieses Beispiel werde ich dieses [Beispiel-PDF](/static-assets/ironpdf-java/howto/bookmarks/NovelSample.pdf) verwenden, um die Gliederung und die Lesezeichen anzuwenden. Dazu wird ein bestehendes PDF-Dokument geladen und der `BookmarkManager` von IronPDF verwendet, um Navigationspunkte im Dokument hinzuzufügen.

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

<!-- TODO: Bild hier einfügen -->
<!-- ![Output mit Beispielergebnissen zum Hinzufügen von Gliederungen und Lesezeichen in IronPDF](/static-assets/images/TODO/add-outline-bookmarks-example-code_output.webp) -->
<!-- Beschreibung: Screenshot mit der Ausgabe oder den Ergebnissen der Codeausführung -->

Nach dem Laden dieser PDF-Datei aus dem angegebenen Dateipfad mit Hilfe der Klasse [`PdfDocument`.fromFile](https://ironpdf.com/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html) rufen Sie das Objekt [`BookmarkManager`](https://ironpdf.com/java/object-reference/api/com/ironsoftware/ironpdf/bookmark/BookmarkManager.html) ab, um mit dem Hinzufügen von Lesezeichen zu beginnen. Mit den Methoden `addBookMarkAtEnd` und `addBookMarkAtStart` können Sie Lesezeichen an den Anfang oder das Ende der Lesezeichensammlung setzen. Diese Methoden bieten Flexibilität bei der Organisation Ihrer Lesezeichen entsprechend der Struktur Ihres Dokuments.

TippsErinnern Sie sich daran, dass alle Seitenindizes der nullbasierten Indizierung folgen.
```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")); } }

Mit dem obigen PDF-Viewer können Sie in den meisten Browsern das Inhaltsverzeichnis in der linken oberen Ecke aufrufen, um alle hinzugefügten Lesezeichen zu sehen. Die einschichtige Lesezeichenstruktur ermöglicht eine unkomplizierte Navigation in Dokumenten mit einfachen organisatorischen Anforderungen.

Wie kann ich mehrere Ebenen von Lesezeichen erstellen?

Beginnen Sie in diesem Beispiel mit dem Hinzufügen von Lesezeichen, wie beim Erstellen einer einzelnen Ebene von Lesezeichen. Verwenden Sie anschließend die Methode insertBookmark, um ein neues Lesezeichen auf einer neuen Ebene hinzuzufügen. Der erste Parameter gibt den Namen des Lesezeichens an, der zweite Parameter die Seite, auf die das Lesezeichen verweist. Um eine neue Ebene zu erstellen, machen Sie das neue Lesezeichen zu einem "Kind" eines bestehenden Lesezeichens, indem Sie den dritten Parameter der Methode verwenden. Diese hierarchische Struktur eignet sich für Dokumente mit Kapiteln, Abschnitten und Unterabschnitten.

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 bookmarks at the end
        bookmarks.addBookMarkAtEnd("Title Page", 0);
        bookmarks.addBookMarkAtEnd("Table of Contents", 1);
        bookmarks.addBookMarkAtEnd("Dedication", 2);

        // Insert second layer bookmarks
        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 multiple layer bookmarks
        pdf.saveAs(Path.of("multiLayer.pdf"));
    }
}
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 bookmarks at the end
        bookmarks.addBookMarkAtEnd("Title Page", 0);
        bookmarks.addBookMarkAtEnd("Table of Contents", 1);
        bookmarks.addBookMarkAtEnd("Dedication", 2);

        // Insert second layer bookmarks
        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 multiple layer bookmarks
        pdf.saveAs(Path.of("multiLayer.pdf"));
    }
}
JAVA

Hier sehen Sie die PDF-Datei mit unserer neuen Baumstruktur der Lesezeichen. In der Gliederung sehen Sie, wie die Funktion insertBookmark eine neue Ebene von Lesezeichen hinzugefügt hat. Dieser mehrschichtige Ansatz eignet sich für technische Dokumentationen, akademische Arbeiten oder jedes Dokument, das eine detaillierte Navigationsstruktur erfordert.


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

Das IronPDF-Lesezeichen-Tool fügt nicht nur neue Lesezeichen hinzu, sondern ruft auch bestehende Lesezeichen ab und zeigt sie an. Diese Funktionalität erweist sich als unerlässlich, wenn es darum geht, bestehende PDFs zu modifizieren oder ihre Struktur zu analysieren. Um durch die Lesezeichen zu navigieren, laden Sie zunächst die PDF-Datei mit der Methode PdfDocument.fromFile. Greifen Sie dann auf das BookmarkManager-Objekt zu und verwenden Sie die getBookmarks-Methode, um alle Lesezeichen abzurufen, einschließlich der untergeordneten Lesezeichen. Schließlich können Sie mit der Methode get ein Lesezeichen über seinen Index in der Liste abrufen. Diese Funktion ermöglicht die programmatische Überprüfung und Manipulation der bestehenden PDF-Navigationsstrukturen.

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
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();

        // Retrieve a specific bookmark by its 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());
        }
    }
}
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
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();

        // Retrieve a specific bookmark by its 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

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

Mit abgerufenen Lesezeichen können Sie neue Lesezeichen an bestimmten Stellen des Dokuments hinzufügen. Diese Funktion hilft bei der Aktualisierung bestehender PDFs mit neuen Abschnitten oder bei der Reorganisation der Dokumentstruktur. Wählen Sie dazu das gewünschte Lesezeichen aus und fügen Sie mit der Methode addNextBookmark ein neues Lesezeichen nach diesem Lesezeichen hinzu. Nehmen Sie zum Beispiel die PDF-Datei aus dem Abschnitt 'Add Multiple Layers of Bookmarks' und fügen Sie ein Lesezeichen nach dem Lesezeichen 'Third Page' ein. Mit der Methode addChildBookmark können Sie auch ein untergeordnetes Lesezeichen als tiefere Ebene hinzufügen und so die Navigationshierarchie Ihres Dokuments genau steuern.

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 we modified earlier
        PdfDocument pdf = PdfDocument.fromFile(Path.of("multiLayer.pdf"));

        // Get the BookmarkManager
        BookmarkManager bookmarks = pdf.getBookmark();

        // Retrieve the list of bookmarks
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();

        // Retrieve a specific bookmark by its index
        Bookmark bookmark = bookmarkList.get(5);

        // Add a new bookmark after the specified bookmark
        bookmark.addNextBookmark("Fourth Page", 6);

        // Add another layer to 'Third page' bookmark
        bookmark.addChildBookmark("Section 1", 7);

        // Save the modified PDF
        pdf.saveAs(Path.of("specificIndex.pdf"));
    }
}
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 we modified earlier
        PdfDocument pdf = PdfDocument.fromFile(Path.of("multiLayer.pdf"));

        // Get the BookmarkManager
        BookmarkManager bookmarks = pdf.getBookmark();

        // Retrieve the list of bookmarks
        List<Bookmark> bookmarkList = bookmarks.getBookmarks();

        // Retrieve a specific bookmark by its index
        Bookmark bookmark = bookmarkList.get(5);

        // Add a new bookmark after the specified bookmark
        bookmark.addNextBookmark("Fourth Page", 6);

        // Add another layer to 'Third page' bookmark
        bookmark.addChildBookmark("Section 1", 7);

        // Save the modified PDF
        pdf.saveAs(Path.of("specificIndex.pdf"));
    }
}
JAVA

Hinweis:Wenn Sie zwei PDF-Dokumente zusammenführen, deren Lesezeichen identische Namen haben, kann dies die Lesezeichenliste selbst stören.

Wenn Sie mit Lesezeichen in komplexen PDF-Workflows arbeiten, sollten Sie auch die anderen Funktionen von IronPDF in Betracht ziehen, z. B. Aufteilung von PDFs zur Erstellung kleinerer Dokumente mit eigenen Lesezeichenstrukturen oder Drucken von PDFs mit intakter Lesezeichennavigation. Weitere fortgeschrittene Beispiele und vollständige Code-Demonstrationen finden Sie im Lesezeichen-Codebeispiel in unserem Beispielbereich.

Häufig gestellte Fragen

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

Mit der Klasse BookmarkManager von IronPDF können Sie Lesezeichen zu PDF-Dokumenten hinzufügen. Laden Sie zunächst Ihr PDF-Dokument mit PdfDocument.fromFile(), greifen Sie dann mit pdf.getBookmark() auf den BookmarkManager zu und fügen Sie Lesezeichen mit der Methode addBookMarkAtEnd() unter Angabe des Lesezeichentitels und der Seitenzahl hinzu.

Was sind die Voraussetzungen für das programmgesteuerte Hinzufügen von PDF-Lesezeichen?

Um PDF-Lesezeichen mit IronPDF hinzuzufügen, benötigen Sie Java 8 oder höher, die IronPDF-Bibliothek, die über Maven oder Gradle integriert ist, und einen gültigen Lizenzschlüssel, der in Ihrer Anwendung konfiguriert ist. Die Bibliothek unterstützt sowohl einschichtige als auch mehrschichtige Lesezeichenstrukturen.

Kann ich mehrstufige Lesezeichenhierarchien in PDFs erstellen?

Ja, IronPDF unterstützt die Erstellung von ein- und mehrschichtigen Lesezeichenstrukturen. Sie können eine hierarchische Navigation mit über- und untergeordneten Lesezeichen erstellen, indem Sie die BookmarkManager-Klasse verwenden, um komplexe PDF-Dokumente zu organisieren.

Welchen Zweck erfüllen PDF-Lesezeichen und Gliederungen?

PDF-Lesezeichen und Gliederungen verbessern die Benutzerfreundlichkeit von Dokumenten erheblich, da sie eine strukturierte Navigation ermöglichen. Sie ermöglichen es den Benutzern, direkt zu wichtigen Abschnitten wie einem Inhaltsverzeichnis zu springen, was besonders bei langen Dokumenten, Berichten oder PDFs mit mehreren Kapiteln von Vorteil ist. IronPDF macht es einfach, diese Navigationsfunktionen programmatisch zu implementieren.

Welche anderen Funktionen zur PDF-Bearbeitung gibt es außer dem Setzen von Lesezeichen?

IronPDF bietet nicht nur das Hinzufügen von Lesezeichen, sondern auch umfassende PDF-Bearbeitungsfunktionen wie das Zusammenführen von PDFs, das Erstellen von Formularen, das Hinzufügen von Wasserzeichen und verschiedene andere Dokumentverarbeitungsfunktionen. Diese Funktionen lassen sich nahtlos in Java-Anwendungen integrieren und ermöglichen so eine vollständige PDF-Verwaltung.

Wie kann ich eine PDF-Datei speichern, nachdem ich Lesezeichen hinzugefügt habe?

Nachdem Sie mit dem IronPDF BookmarkManager Lesezeichen hinzugefügt haben, speichern Sie das geänderte PDF-Dokument, indem Sie die saveAs()-Methode für Ihr PdfDocument-Objekt aufrufen und den Pfad der Ausgabedatei angeben, in der Sie das mit Lesezeichen versehene PDF-Dokument speichern möchten.

Darrius Serrant
Full-Stack-Software-Ingenieur (WebOps)

Darrius Serrant hat einen Bachelor-Abschluss in Informatik von der University of Miami und arbeitet als Full-Stack-WebOps-Marketing-Ingenieur bei Iron Software. Seit seiner Jugend vom Programmieren angezogen, sah er die Informatik als sowohl mysteriös als auch zugänglich, was es zum perfekten Medium für Kreativität und Problemlösung ...

Weiterlesen
Bereit anzufangen?
Version: 2025.12 gerade veröffentlicht