Saltar al pie de página
USANDO IRONPDF PARA JAVA

Cómo Generar Archivos PDF Dinámicamente Desde Aplicaciones Java

Este tutorial explicará cómo crear archivos PDF dinámicamente en aplicaciones Java y explorará los ejemplos de código para crear páginas PDF a partir de texto, URL y páginas HTML. Después, cubrirá la creación de un archivo PDF protegido con contraseña a partir de una nueva instancia de documento.

La IronPDF for Java Library es ideal para este propósito porque es gratuita para desarrollo, más segura, proporciona todas las funcionalidades en una sola biblioteca con un 100% de precisión, y tiene un rendimiento excepcional.

Antes de avanzar, hagamos una breve introducción a IronPDF.

HierroPDF

IronPDF for Java Library es la biblioteca PDF para Java más popular desarrollada por Iron Software para crear PDFs, editar nuevos archivos y manipular PDFs existentes. Está diseñada para ser compatible con una amplia gama de lenguajes JVM, incluidos Java, Scala y Kotlin, y puede ejecutarse en una amplia gama de plataformas, incluidas Windows, Linux, Docker, Azure, y AWS. IronPDF trabaja con IDEs populares como IntelliJ IDEA y Eclipse.

Las características principales incluyen la capacidad para crear un archivo PDF a partir de HTML, HTTP, JavaScript, CSS, documentos XML y varios formatos de imagen. Además, IronPDF ofrece las habilidades para agregar encabezados y pies de página, crear tablas en PDF, agregar firmas digitales, adjuntos, implementar contraseñas y características de seguridad. ¡Admite el multithreading completo y mucho más!

Ahora, comencemos con los ejemplos de código para crear documentos dinámicos.

Primero que todo, cree un nuevo proyecto de repositorio Maven.

Crear un nuevo proyecto Java

Con fines de demostración, este tutorial utilizará IntelliJ IDE. Puedes usar un IDE de tu elección. Los pasos para crear un nuevo proyecto Java pueden diferir de un IDE a otro. Usa los siguientes pasos:

  1. Inicia el IDE IntelliJ.
  2. Selecciona Archivo > Nuevo > Proyecto.
  3. Ingresa el título del proyecto.
  4. Elija una ubicación, un idioma, un sistema de construcción y un JDK.
  5. Haz clic en el botón Crear.

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 1: Crear un Proyecto Crear un Proyecto

Nombra tu proyecto, elige una ubicación, un idioma, un sistema de construcción y un JDK, luego selecciona la opción de botón Crear. Se creará un nuevo proyecto.

Ahora, instala IronPDF en esta aplicación Java demo.

Instalar IronPDF Java Library

El siguiente paso es agregar una dependencia en el archivo pom.xml para instalar IronPDF. Añade el siguiente código fuente XML en el archivo pom.xml como se muestra a continuación.

<!-- Add IronPDF to your Maven Project -->
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>INSERT_LATEST_VERSION_HERE</version>
</dependency>
<!-- Add IronPDF to your Maven Project -->
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>INSERT_LATEST_VERSION_HERE</version>
</dependency>
XML

Reemplaza INSERT_LATEST_VERSION_HERE con la última versión de IronPDF del [repositorio Maven](https://central.sonatype.com/artifact/com.Iron Software/ironpdf).

Después de agregar la dependencia, construye el proyecto. La aplicación instalará automáticamente la biblioteca desde el repositorio Maven.

Comencemos con un ejemplo sencillo de convertir una cadena HTML en un archivo PDF.

Crear documentos PDF

Considera el siguiente ejemplo:

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.Paths;

public class HtmlToPdfExample {

    public static void main(String[] args) {
        // Define HTML content
        String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>";

        // Convert HTML content to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("myPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.Paths;

public class HtmlToPdfExample {

    public static void main(String[] args) {
        // Define HTML content
        String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>";

        // Convert HTML content to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("myPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

En la función anterior, el contenido HTML se asigna a una variable de cadena. El [método renderHtmlAsPdf](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#renderHtmlAsPdf(java.lang.String)) toma una cadena como argumento y convierte el contenido HTML en una instancia de documento PDF. El [método saveAs](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#saveAs(java.nio.file.Path)) acepta la ruta de ubicación como entrada y guarda la instancia del archivo PDF en el directorio seleccionado.

El PDF producido por el código mencionado se muestra a continuación.

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 2: Salida Output

Generar archivo PDF a partir de archivo HTML

IronPDF también proporciona la asombrosa funcionalidad de generar archivos PDF a partir de archivos HTML.

El archivo HTML de ejemplo que se utilizará en el ejemplo se muestra a continuación.

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 3: HTML Renderizado con nuevo párrafo HTML Renderizado con nuevo párrafo

El siguiente es el fragmento de código de ejemplo para generar PDFs:

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class HtmlFileToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("myPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class HtmlFileToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("myPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

El [método renderHtmlFileAsPdf](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#renderHtmlFileAsPdf(java.lang.String)) acepta la ruta del archivo HTML como argumento y produce un documento PDF a partir del archivo HTML. Este archivo PDF se guarda posteriormente usando el método saveAs en un disco local.

El documento generado en formato PDF se muestra a continuación.

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 4: Salida PDF Salida de PDF

El siguiente paso es usar un documento HTML de gran tamaño que contenga JavaScript y CSS y verificar la precisión y consistencia del diseño mientras se convierte HTML a PDF.

Generar archivos PDF a partir de archivos HTML

La siguiente página HTML de ejemplo se utilizará e incluye imágenes, animación, estilos, jQuery y Bootstrap.

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 5: Página HTML de Ejemplo Página HTML de Ejemplo

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 6: HTML de Ejemplo HTML de Ejemplo

El documento HTML de ejemplo muestra que tiene un extenso estilo e incluye gráficos. Este archivo HTML se convertirá en un documento PDF, y se evaluará la precisión del contenido y el estilo.

Se usará la misma línea de código del ejemplo anterior.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class StyledHtmlToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file with styling to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("styledPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class StyledHtmlToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file with styling to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("styledPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

El ejemplo anterior ya incluye una explicación del código. El resto es inalterado;

Este es el archivo PDF resultante:

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 7: HTML a PDF HTML a PDF

Usar IronPDF para crear archivos PDF es bastante sencillo. El formato y contenido del documento fuente son consistentes.

También se puede usar una URL para crear un archivo PDF.

Convertir URL en documento PDF

El siguiente ejemplo de código generará un archivo PDF a partir de una URL.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class UrlToPdfExample {

    public static void main(String[] args) {
        // Convert URL to PDF
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("urlPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class UrlToPdfExample {

    public static void main(String[] args) {
        // Convert URL to PDF
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("urlPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

La [función renderUrlAsPdf](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#renderUrlAsPdf(java.lang.String)) acepta una URL como argumento y la convierte en un documento PDF. Este documento PDF se guarda posteriormente en un disco local usando la función saveAs.

El siguiente es el PDF resultante:

Cómo Generar Archivos PDF Desde Aplicaciones Java Dinámicamente, Figura 8: Salida PDF PDF de Salida

También es posible agregar una marca de agua, encabezado, pie de página, firma digital, convertir archivos XML/páginas JSP, y más.

El siguiente paso es generar PDFs protegidos con contraseña.

Generar archivo PDF protegido por contraseña

El siguiente código de ejemplo demuestra cómo agregar seguridad al archivo PDF generado.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.security.PdfEditSecurity;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import java.io.IOException;
import java.nio.file.Paths;

public class SecurePdfExample {

    public static void main(String[] args) {
        // Load an existing PDF document
        PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf"));

        // Configure security options
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT);
        securityOptions.setAllowUserAnnotations(false);
        securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
        securityOptions.setAllowUserFormData(false);
        securityOptions.setOwnerPassword("123456"); // Set owner password
        securityOptions.setUserPassword("123412"); // Set user password

        // Apply security options to the PDF document
        myPdf.applySecurity(securityOptions);

        // Save the secured PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("securedPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.security.PdfEditSecurity;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import java.io.IOException;
import java.nio.file.Paths;

public class SecurePdfExample {

    public static void main(String[] args) {
        // Load an existing PDF document
        PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf"));

        // Configure security options
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT);
        securityOptions.setAllowUserAnnotations(false);
        securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
        securityOptions.setAllowUserFormData(false);
        securityOptions.setOwnerPassword("123456"); // Set owner password
        securityOptions.setUserPassword("123412"); // Set user password

        // Apply security options to the PDF document
        myPdf.applySecurity(securityOptions);

        // Save the secured PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("securedPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

El archivo PDF por el código anterior es de solo lectura, y no se permiten ediciones o alineación de párrafos. El documento también está restringido para impresión, asegurando que no pueda imprimirse. También se ha establecido una contraseña. El archivo es ahora muy seguro. De esta manera, se pueden definir diferentes permisos de archivo y se puede generar salida dinámica usando IronPDF.

Resumen

Este tutorial demostró cómo generar archivos PDF. Se creó un archivo PDF a partir de una cadena HTML, un archivo HTML, y una URL, con ejemplos que van desde lo simple a lo complejo. Hay muchas más características útiles disponibles, como agregar una marca de agua, pie de página, encabezado, color de primer plano, unir y dividir páginas, etc. Todos ellos no pueden cubrirse aquí; visita la Documentación Oficial de IronPDF para mayor exploración.

La conversión de HTML a PDF se hizo sin esfuerzo con IronPDF. El HTML se convirtió a PDF con solo una línea de código. También se han agregado algunas medidas de seguridad al archivo PDF. Es más rápido, más preciso y más seguro. Cada PDF generado incluye la marca de agua de IronPDF. Esto se debe a que se está utilizando una versión de desarrollo gratuita con permisos limitados, no la licencia comercial. Se puede eliminar mediante la compra de una versión de prueba gratuita o una licencia completa según sea necesario.

Preguntas Frecuentes

¿Cómo puedo generar archivos PDF desde HTML en Java?

Puedes generar archivos PDF desde HTML en Java usando el método renderHtmlAsPdf de IronPDF para convertir cadenas HTML y el método renderHtmlFileAsPdf para archivos HTML.

¿Qué método debería usar para convertir una URL en un PDF en Java?

Para convertir una URL en un PDF en Java, usa el método renderUrlAsPdf de IronPDF, lo que te permite crear fácilmente PDFs a partir de páginas web.

¿Cómo aseguro un PDF con una contraseña en Java?

En Java, puedes asegurar un PDF con una contraseña usando IronPDF para configurar SecurityOptions, que incluyen agregar contraseñas y gestionar permisos para el documento PDF.

¿Puede IronPDF manejar CSS complejos al convertir HTML a PDF?

Sí, IronPDF puede manejar CSS complejos al convertir HTML a PDF, asegurando que el estilo se refleje con precisión en el documento PDF generado.

¿Cuáles son las limitaciones de la versión de desarrollo gratuita de IronPDF?

La versión de desarrollo gratuita de IronPDF incluye una marca de agua en cada PDF generado. Comprar una licencia comercial elimina esta limitación.

¿Qué funcionalidades adicionales proporciona IronPDF para PDFs?

IronPDF ofrece funcionalidades adicionales como agregar marcas de agua, encabezados, pies de página y la capacidad de combinar páginas dentro de los PDFs.

¿Cuáles son los pasos para configurar IronPDF en un nuevo proyecto Java?

Para configurar IronPDF en un nuevo proyecto Java, instala la biblioteca a través de Maven, luego importa las clases necesarias a tu proyecto para comenzar a generar PDFs.

¿Puedo restringir la edición y la impresión en un PDF generado por IronPDF?

Sí, IronPDF te permite restringir la edición, anotaciones, impresión y entrada de datos de formularios aplicando configuraciones de seguridad específicas al documento PDF.

¿Qué plataformas son compatibles con IronPDF for Java?

IronPDF for Java es compatible con una amplia gama de plataformas, incluyendo Windows, Linux, Docker, Azure y AWS.

¿Dónde puedo encontrar documentación detallada para usar IronPDF en Java?

La documentación detallada y ejemplos para usar IronPDF en Java se pueden encontrar en el sitio web oficial de IronPDF, que proporciona recursos y guías comprensivas.

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