Cómo añadir marcadores y esquemas en PDF en Java

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

La biblioteca Java de IronPDF le permite añadir mediante programación marcadores y esquemas a documentos PDF utilizando la clase BookmarkManager, que admite estructuras de marcadores de una o varias capas con puntos de navegación personalizables.

como-encabezamiento:2(Inicio rápido: Añadir marcadores PDF en Java)

  1. Instale la biblioteca IronPDF Java y establezca su clave de licencia
  2. Cargue su PDF con PdfDocument.fromFile()
  3. Obtenga el BookmarkManager con pdf.getBookmark()
  4. Añada marcadores con addBookMarkAtEnd("Title", pageNumber)
  5. Guarde el PDF con pdf.saveAs()

using IronPdf;java :title=Inicio rápido PdfDocument pdf = PdfDocument.fromFile(Ruta.de("documento.pdf")); BookmarkManager marcadores = pdf.getBookmark(); bookmarks.addBookMarkAtEnd("Capítulo 1", 0); pdf.saveAs(Ruta.de("bookmarked.pdf")); using IronPdf;

Los marcadores de PDF mejoran considerablemente la usabilidad y la navegación de los documentos. Los esquemas proporcionan una navegación estructurada dentro de los PDF, permitiendo a los usuarios saltar directamente a secciones clave como un índice. Esta funcionalidad resulta esencial cuando se trabaja con documentos extensos, informes o PDF de varios capítulos que requieren una navegación organizada.

IronPDF simplifica la manipulación de PDF en aplicaciones Java. Su función de marcadores ofrece métodos sencillos para crear marcadores personalizados en archivos PDF. La biblioteca se integra a la perfección con las aplicaciones Java y admite varias funciones de manipulación de PDF además de los marcadores, como mezclar PDF, crear formularios y añadir marcas de agua.

¿Qué necesito antes de empezar?

Antes de implementar los marcadores PDF, asegúrese de tener IronPDF correctamente configurado en su proyecto Java. La biblioteca requiere Java 8 o superior y puede integrarse fácilmente utilizando Maven o Gradle. Deberá añadir la dependencia IronPDF al archivo de compilación de su proyecto. Para obtener instrucciones detalladas de configuración, consulte Get Started Overview.

También debe asegurarse de que su clave de licencia está configurada correctamente, ya que IronPDF requiere licencia para el desarrollo. Para obtener información completa sobre las opciones de licencia y su implementación, visite la guía de licencias. Establezca la clave de licencia al principio de su aplicación antes de utilizar cualquier funcionalidad de IronPDF.

¿Cómo añado un esquema y marcadores a un PDF?

Para este ejemplo, utilizaré este PDF de ejemplo para aplicar el esquema y los marcadores. El proceso consiste en cargar un documento PDF existente y utilizar el BookmarkManager de IronPDF para añadir puntos de navegación en todo el documento.

¿Cómo puedo añadir una sola capa de marcadores?

Después de cargar este PDF desde la ruta de archivo especificada mediante la clase PdfDocument.fromFile, recupere el objeto BookmarkManager para empezar a añadir marcadores. Puede añadir marcadores al principio o al final de la colección de marcadores mediante los métodos addBookMarkAtEnd y addBookMarkAtStart. Estos métodos ofrecen flexibilidad a la hora de organizar los marcadores en función de la estructura del documento.

ConsejosRecuerde que todos los índices de páginas siguen una indexación basada en cero.

using IronPdf;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 marcadores = 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(Ruta.de("bookmarked.pdf"));
}

} using IronPdf;

Con el visor de PDF anterior, consulte el índice situado en la esquina superior izquierda de la mayoría de los navegadores para ver todos los marcadores añadidos. Esta estructura de marcadores de una sola capa ofrece una navegación sencilla para documentos con necesidades organizativas simples.

¿Cómo crear varias capas de marcadores?

En este ejemplo, comience por añadir marcadores como si se tratara de crear una sola capa de marcadores. A continuación, utilice el método insertBookmark para añadir un nuevo marcador en una nueva capa. El primer parámetro especifica el nombre del marcador y el segundo la página a la que enlaza. Para crear una nueva capa, haga que el nuevo marcador sea "hijo" de un marcador existente utilizando el tercer parámetro del método. Esta estructura jerárquica se adapta a documentos con capítulos, secciones y subsecciones.

using IronPdf;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 marcadores = 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"));
}

} using IronPdf;

Aquí puede ver el PDF con nuestra nueva estructura de árbol de marcadores. Consulta el esquema para ver cómo la función insertBookmark añadió una nueva capa de marcadores. Este enfoque multicapa es adecuado para documentación técnica, trabajos académicos o cualquier documento que requiera una estructura de navegación detallada.


¿Cómo recuperar los marcadores existentes de un PDF?

La herramienta de marcadores de IronPDF no solo añade nuevos marcadores, sino que también recupera y visualiza los existentes. Esta funcionalidad resulta esencial a la hora de modificar PDF existentes o analizar su estructura. Para navegar por los marcadores, cargue primero el PDF mediante el método PdfDocument.fromFile. A continuación, acceda al objeto BookmarkManager y utilice el método getBookmarks para recuperar todos los marcadores, incluidos los marcadores secundarios. Por último, utilice el método get para recuperar un marcador por su índice en la lista. Esta capacidad permite la inspección programática y la manipulación de las estructuras de navegación PDF existentes.

using IronPdf;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 marcadores = 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());
    }
}

} using IronPdf;


¿Cómo puedo insertar un marcador en un índice específico?

Con los marcadores recuperados, puedes añadir nuevos marcadores en índices específicos dentro del documento. Esta función ayuda a actualizar los PDF existentes con nuevas secciones o a reorganizar la estructura del documento. Para ello, seleccione el marcador deseado y utilice el método addNextBookmark para añadir un nuevo marcador a continuación. Por ejemplo, tome el PDF de la sección 'Añadir varias capas de marcadores' y añada un marcador después del marcador 'Tercera página'. También puede añadir un marcador hijo como una capa más profunda utilizando el método addChildBookmark, permitiendo un control preciso sobre la jerarquía de navegación de su documento.

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

    // Get the BookmarkManager
    BookmarkManager marcadores = 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"));
}

} using IronPdf;

Por favor notaSi fusiona dos documentos PDF cuyos marcadores comparten nombres idénticos, esto puede alterar la propia lista de marcadores.

Cuando trabaje con marcadores en flujos de trabajo PDF complejos, considere explorar otras funciones de IronPDF como dividir PDF para crear documentos más pequeños con sus propias estructuras de marcadores, o imprimir PDF con la navegación de marcadores intacta. Para obtener ejemplos más avanzados y demostraciones de código completas, consulte el ejemplo de código de marcadores en nuestra sección de ejemplos.

Preguntas Frecuentes

¿Cómo añado marcadores a un documento PDF en Java?

Puede añadir marcadores a documentos PDF utilizando la clase BookmarkManager de IronPDF. Primero, cargue su PDF utilizando PdfDocument.fromFile(), luego acceda al BookmarkManager con pdf.getBookmark(), y añada marcadores utilizando el método addBookMarkAtEnd() especificando el título del marcador y el número de página.

¿Cuáles son los requisitos previos para añadir marcadores PDF mediante programación?

Para añadir marcadores PDF con IronPDF, necesita Java 8 o superior, la biblioteca IronPDF integrada a través de Maven o Gradle, y una clave de licencia válida configurada en su aplicación. La biblioteca admite estructuras de marcadores de una capa y de varias capas.

¿Puedo crear jerarquías de marcadores de varios niveles en los PDF?

Sí, IronPDF admite la creación de estructuras de marcadores tanto de una capa como de varias capas. Puede crear una navegación jerárquica con marcadores padre e hijo utilizando la clase BookmarkManager para organizar documentos PDF complejos.

¿Para qué sirven los marcadores y esquemas de PDF?

Los marcadores y esquemas de PDF mejoran significativamente la usabilidad del documento al proporcionar una navegación estructurada. Permiten a los usuarios saltar directamente a secciones clave como un índice, lo que es especialmente valioso para documentos largos, informes o PDF de varios capítulos. IronPDF facilita la implementación de estas funciones de navegación mediante programación.

¿Qué otras funciones de manipulación de PDF están disponibles además de los marcadores?

Además de añadir marcadores, IronPDF ofrece funciones completas de manipulación de PDF, como la fusión de PDF, la creación de formularios, la adición de marcas de agua y otras funciones de procesamiento de documentos. Estas funcionalidades se integran perfectamente con las aplicaciones Java para una gestión completa de los PDF.

¿Cómo se guarda un PDF después de añadirle marcadores?

Después de añadir marcadores utilizando el BookmarkManager de IronPDF, guarde el documento PDF modificado llamando al método saveAs() en su objeto PdfDocument, especificando la ruta del archivo de salida donde desea guardar el PDF marcado.

Darrius Serrant
Ingeniero de Software Full Stack (WebOps)

Darrius Serrant tiene una licenciatura en Ciencias de la Computación de la Universidad de Miami y trabaja como Ingeniero de Marketing WebOps Full Stack en Iron Software. Atraído por la programación desde joven, vio la computación como algo misterioso y accesible, convirtiéndolo en el ...

Leer más
¿Listo para empezar?
Versión: 2025.12 recién lanzado