
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.
Cómo Generar Archivos PDF Dinámicamente Desde Aplicaciones Java
- Instalar biblioteca Java para generar PDF dinámicamente
- Crear PDF a partir de una cadena HTML personalizada
- Generar PDF a partir de un archivo HTML con estilos CSS complejos
- Usar un enlace URL para generar PDF con la opción de agregar encabezado y pie de página en Java
- Poner contraseña a los archivos PDF generados dinámicamente
IronPDF
IronPDF for Java Library es la biblioteca PDF de 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:
- Inicia el IDE IntelliJ.
- Selecciona Archivo > Nuevo > Proyecto.
- Ingresa el título del proyecto.
- Elija una ubicación, un idioma, un sistema de construcción y un JDK.
- Haz clic en el botón Crear.
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 añadir una dependencia en el archivo pom.xml para instalar IronPDF. Añada el siguiente código fuente XML en el archivo pom.xml tal y 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>
Sustituya INSERT_LATEST_VERSION_HERE por la última versión de IronPDF del repositorio de Maven.
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();
}
}
}
En la función anterior, el contenido HTML se asigna a una variable de cadena. El [método renderHtmlAsPdf](/java/object-reference/api/com/ironsoftware/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 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.
Salida
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.
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();
}
}
}
El [método renderHtmlFileAsPdf](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#renderHtmlFileAsPdf(java.lang.String) acepta la ruta al archivo HTML como argumento y genera un documento PDF a partir de dicho archivo. Posteriormente, este archivo PDF se guarda en una unidad local mediante el método saveAs.
El documento generado en formato PDF se muestra a continuación.
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.
Página 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();
}
}
}
El ejemplo anterior ya incluye una explicación del código. El resto es inalterado;
Este es el archivo PDF resultante:
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();
}
}
}
La [función renderUrlAsPdf](/java/object-reference/api/com/ironsoftware/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 una unidad local utilizando la función saveAs.
El siguiente es el PDF resultante:
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();
}
}
}
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.

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.
Related Articles


