USO DE IRONPDF PARA JAVA

Cómo crear un PDF a partir de una plantilla en Java

Actualizado 8 de mayo, 2023
Compartir:

Java es un lenguaje de programación muy utilizado para desarrollar aplicaciones Web, aplicaciones de escritorio y aplicaciones para móviles. Una tarea habitual en muchas aplicaciones es la generación de archivos PDF a partir de plantillas o archivos HTML como datos de entrada.

La generación de PDF es un requisito común en muchas aplicaciones, especialmente las que se ocupan de imprimir o generar informes. Aunque hay muchas bibliotecas disponibles para la generación de PDF en Java, IronPDF es una de las más populares y potentes. IronPDF ofrece una serie de funciones que facilitan la creación y manipulación de archivos PDF en Java. Puede utilizarse para crear archivos PDF a partir de plantillas HTML.

Una de las grandes características de IronPDF for Java es su capacidad para trabajar con plantillas PDF. Una plantilla PDF es un archivo PDF prediseñado que contiene marcadores de posición para contenido dinámico. Con IronPDF, puede sustituir fácilmente estos marcadores de posición por datos reales para generar un nuevo documento personalizado en formato PDF.

IronPDF

IronPDF es una biblioteca Java desarrollada y mantenida por Iron Software. Proporciona una interfaz fácil de usar que abstrae muchas de las complejidades de la generación de PDF, lo que permite a los desarrolladores centrarse en el contenido de sus PDF en lugar de en los detalles de cómo se generan los archivos. IronPDF también ofrece una serie de funciones que facilitan el trabajo con plantillas PDF, formularios rellenables y firmas digitales.

Este tutorial le guiará a través de los pasos necesarios para crear un archivo PDF a partir de una plantilla utilizando IronPDF en Java.

Nuestro primer paso es crear un proyecto.

Paso 1: Crear un nuevo proyecto Java

Estos son los pasos para crear un nuevo proyecto Java utilizando IntelliJ IDEA:

  1. Abra IntelliJ IDEA y seleccione "Crear nuevo proyecto" en la pantalla de bienvenida o en el menú "Archivo".
  2. Seleccione "Java" en el menú de la izquierda y elija la versión del JDK que desea utilizar para su proyecto. Haga clic en "Siguiente".
  3. Elija un nombre y una ubicación para su proyecto, y seleccione el tipo de proyecto. Puede elegir entre varios tipos de proyecto, como "Aplicación Java", "Biblioteca Java" o "Aplicación JavaFX". Haga clic en "Siguiente".
  4. Configure los ajustes del proyecto. Puede especificar el SDK del proyecto, el nivel de idioma del proyecto y otros ajustes. También puede optar por crear un módulo o seleccionar uno existente. Haga clic en "Siguiente".
  5. Elija la plantilla del proyecto. Puede elegir entre crear un proyecto en blanco, un proyecto con un código de ejemplo o importar un proyecto existente. Haga clic en "Finalizar".

    Cómo crear un PDF a partir de una plantilla en Java: Figura 1 - Crear un nuevo proyecto Java usando IntelliJ IDEA

Paso 2: Añadir la librería IronPDF a su proyecto

El segundo paso consiste en añadir la biblioteca IronPDF a su proyecto Java mediante un archivo XML. Puede hacerlo añadiendo la siguiente dependencia al archivo pom.xml de su proyecto:

<dependency>
   <groupId>com.ironsoftware</groupId>
   <artifactId>com.ironsoftware</artifactId>
   <version>2024.3.1</version>
</dependency>

Paso 3: Crear la plantilla PDF

A continuación, debe crear una plantilla PDF que utilizará para generar su archivo PDF. Puede crear su plantilla PDF utilizando cualquier editor de PDF. La plantilla puede incluir marcadores de posición que se sustituirán por datos dinámicos en tiempo de ejecución.

Supongamos que tenemos que entregar certificados a 50 estudiantes. Ahora es una tarea muy agitada crear certificados separados para cada usuario. Podemos utilizar una plantilla y simplemente cambiar un nombre utilizando nuestro programa como se demuestra a continuación.

Cómo crear un PDF a partir de una plantilla en Java: Figura 2 - Ejemplo de imagen de plantilla de certificado

Paso 4: Crear documentos PDF a partir de una plantilla

Después de crear el certificado de plantilla PDF, tenemos que cargarlo en nuestra aplicación Java. Podemos utilizar la clase IronPDF PdfDocument para cargar la plantilla PDF en memoria. He aquí un fragmento de código de ejemplo que muestra cómo cargar una plantilla PDF utilizando IronPDF:

PdfDocument PdfDoc = PdfDocument.fromFile(Paths.get("CERTIFICATE.pdf"));
JAVA

Ahora, escribiremos un código de ejemplo que creará 5 certificados basados en nuestra plantilla dada.


//lanza una excepción si las operaciones con archivos no se gestionan correctamente
public static void main(String [] args) throws IOException {

    String [] studentName = new String [] {"Georgia Wade","Juliet Dave", "Olive Seth","Miles Jorg","Oscar Den"};
    for (String name: studentName) {
        PdfDocument PdfDoc = PdfDocument.fromFile(Paths.get("CERTIFICATE.pdf"));
        PdfDoc.replaceText(PageSelection.firstPage(),"Recipient Name",name);
        PdfDoc.saveAs(Paths.get("/Certificate/"+name+".pdf"));
    }
}
JAVA

A continuación se muestran los registros de salida:

Cómo crear un PDF a partir de una plantilla en Java: Figura 3 - Salida

El código anterior crea una matriz de nombres de estudiantes y luego utiliza la biblioteca IronPDF para reemplazar un texto de marcador de posición en una plantilla PDF preexistente con el nombre de cada estudiante y luego guarda una nueva copia del PDF con el nombre del estudiante como nombre de archivo.

Así es como funciona el código:

  1. La matriz studentName se define e inicializa con cinco nombres de estudiantes.
  2. El bucle for recorre cada nombre de la matriz studentName.
  3. El método PdfDocument.fromFile carga el archivo de plantilla PDF llamado "CERTIFICATE.pdf" en un objeto PdfDocument.
  4. El método PdfDoc.replaceText se utiliza para sustituir el texto "Nombre del destinatario" de la plantilla PDF por el nombre del alumno actual.
  5. El método PdfDoc.saveAs guarda el archivo PDF modificado con el nombre del alumno como nombre de archivo en el directorio "/Certificado".
  6. El bucle continúa hasta que se han procesado todos los nombres de los alumnos.

    De este modo, hemos generado múltiples certificados, cada uno con un nombre de estudiante único, basados en una única plantilla PDF. Podemos generar documentos PDF con cualquier plantilla.

Archivos PDF generados

Cómo crear un PDF a partir de una plantilla en Java: Figura 4 - Salida PDF

Archivo de salida del certificado

A continuación se muestra el certificado generado por nuestro programa.

Cómo crear un PDF a partir de una plantilla en Java: Figura 5 - Salida del Certificado

Paso 5: Crear plantilla PDF a partir de plantilla HTML

En este ejemplo, utilizaremos un archivo HTML para crear una plantilla PDF y luego utilizaremos esa plantilla para generar un documento PDF.

Utilizaré el siguiente archivo HTML para demostrar el ejemplo.

Cómo crear un PDF a partir de una plantilla en Java: Figura 6 - Salida HTML

Considere el siguiente ejemplo de código para crear un nuevo documento a partir del formato HTML dado.


public static void main(String [] args) throws IOException {
    Path fileName = Path.of("D:\\index.html");
    String userName = "Mike";
    String title = "Sample PDF File";
    String body = "This is body of our template PDF";
    String htmlStr = Files.readString(fileName);
    htmlStr = htmlStr.replace("{UserName}", userName);
    htmlStr = htmlStr.replace("{Title}", title);
    htmlStr =htmlStr.replace("{message}", body);
    PdfDocument PdfDoc = PdfDocument.renderHtmlAsPdf(htmlStr);
    PdfDoc.saveAs(Paths.get("/htmlTemplate/" + userName + ".pdf"));
}
JAVA

El código anterior lee el contenido de un archivo HTML, sustituye los marcadores de posición del archivo HTML por datos dinámicos, renderiza el HTML como un documento PDF utilizando la biblioteca IronPDF y guarda el documento PDF generado en un directorio específico.

Aquí tienes una explicación paso a paso de lo que hace el código:

  1. El código comienza creando un objeto Path que apunta a un archivo HTML en el sistema de archivos local. En este caso, el archivo se encuentra en "D:\index.html".
  2. Se declaran e inicializan tres variables con algunos datos de ejemplo: userName, title y body.
  3. El contenido del archivo HTML se lee en una variable de cadena llamada htmlStr utilizando el método Files.readString.
  4. El método String.replace se utiliza para sustituir tres marcadores de posición ({Nombre de usuario}, {Título}, y {mensaje}) en el archivo HTML con los datos dinámicos correspondientes.
  5. El método PdfDocument.renderHtmlAsPdf es llamado con la cadena HTML modificada como argumento para renderizar el HTML como un documento PDF. El documento PDF resultante se almacena en un objeto PdfDocument llamado PdfDoc.
  6. Se llama al método PdfDoc.saveAs para guardar el documento PDF generado en un directorio llamado "htmlTemplate" en el sistema de archivos local, con el nombre de archivo construido a partir de la variable userName.

    Cómo crear un PDF a partir de una plantilla en Java: Figura 7 - Salida

    De este modo, podemos crear Archivos PDF a partir de HTML plantillas de forma muy sencilla.

    Podemos sustituir esta marca de agua por prueba gratuita o la compra de un licencia comercial.

Conclusión

En este artículo, hemos explorado cómo utilizar IronPDF for Java para generar archivos PDF. IronPDF proporciona una interfaz sencilla y potente que le permite crear y manipular archivos PDF con facilidad. Con IronPDF, puede crear fácilmente documentos PDF de aspecto profesional que pueden utilizarse para diversos fines, como generar informes, facturas y otros tipos de documentos.

IronPDF también es altamente personalizable, con opciones para controlar la apariencia y el diseño de los archivos PDF. Los desarrolladores pueden especificar márgenes de página, tamaños de fuente, colores y otras propiedades para crear archivos PDF que se ajusten a sus requisitos específicos.

En general, IronPDF es una biblioteca potente y flexible para la generación de PDF en Java. Con su interfaz fácil de usar y su amplia gama de funciones, IronPDF es una gran elección para cualquier aplicación que requiera la generación de PDF.

Descargar el producto de software.

< ANTERIOR
Cómo generar informes PDF en Java
SIGUIENTE >
Java PDF Stamper (Tutorial para principiantes)

¿Listo para empezar? Versión: 2024.3 recién publicada

Descarga gratuita de Maven Ver licencias >