
Cómo generar un archivo PDF en Node.js
Este artículo se esfuerza por profundizar en las intrincadas complejidades de IronPDF, guiando a los lectores a través de cada faceta, desde el proceso de instalación inicial hasta su implementación práctica en escenarios del mundo real.
1. ¿Cómo utilizar el generador de PDF de Node.js?
- Instalar la biblioteca generadora de PDF del IronPDF for Node.js.
- Importar las dependencias requeridas.
- Render HTML as PDF using
PdfDocument.fromHtmlfunction. - Genera un PDF desde una URL usando el método
PdfDocument.fromUrl. - Convierte imágenes en archivos PDF usando el método
imageToPdf. - Guarda los archivos PDF creados usando el método
saveAs.
2. Exploración de IronPDF for Node.js
IronPDF de Iron Software se presenta como una formidable biblioteca de PDF meticulosamente creada para Node.js, otorgando a los desarrolladores la capacidad de generar archivos PDF sin esfuerzo. Con una amplia gama de características, IronPDF demuestra su versatilidad, atendiendo a un espectro de casos de uso que van desde la generación de documentos y creación de informes hasta la renderización de contenido. Entre sus atributos sobresalientes se encuentra la notable capacidad de convertir sin problemas una plantilla HTML e imágenes en archivos PDF, mostrando la adaptabilidad y eficiencia de la biblioteca al manejar diversas fuentes de contenido.
2.1. Instalación de IronPDF
Antes de sumergirse en el mundo de la generación de PDF, necesita instalar IronPDF. El proceso es simple gracias a npm, el gestor de paquetes de Node.js. Abre tu terminal y ejecuta el siguiente comando:
Este comando descarga e instala el paquete de IronPDF, poniéndolo a disposición para su uso en su proyecto de Node.js.
Para instalar el motor de IronPDF necesario para usar la biblioteca IronPDF, ejecute el siguiente comando en la consola.
3. Añadir paquetes necesarios
Una vez instalado IronPDF, necesita incluir los paquetes necesarios en su proyecto usando la declaración import. Esto asegura que tenga acceso a las funcionalidades provistas por IronPDF. Considera el siguiente ejemplo:
import { PdfDocument } from "@ironsoftware/ironpdf";
Esta declaración de importación trae la clase PdfDocument, un bloque de construcción fundamental para generar archivos PDF con IronPDF.
4. Generación de archivos PDF
Ahora que IronPDF está configurado en su proyecto, exploremos el proceso básico de generar un archivo PDF usando el paquete creador de PDF. Existen muchas formas de crear archivos PDF utilizando IronPDF, pero este artículo discutirá algunas de ellas.
- Cadena HTML a PDF
- URL a PDF
- Imágenes a PDF
4.1. Convertir un documento HTML a PDF usando IronPDF
Una de las características destacadas de IronPDF es su capacidad de convertir HTML en archivos PDF sin esfuerzo. Esto es particularmente útil cuando tiene contenido dinámico generado en el servidor y quiere presentarlo en formato PDF. Aquí hay un ejemplo simple:
import { PdfDocument } from "@ironsoftware/ironpdf";
(async () => {
// Create a PDF from an HTML string
const pdf = await PdfDocument.fromHtml(
"<h1>Hello Developers This is an Example PDF created with IronPDF</h1>"
);
// Export the PDF to a file
await pdf.saveAs("output.pdf");
})();
Este fragmento de código utiliza IronPDF, una biblioteca de Node.js, para generar dinámicamente un documento PDF a partir de una cadena HTML especificada. Comienza importando la clase PdfDocument del paquete IronPDF. La función asincrónica subsiguiente emplea el método fromHtml para crear un documento PDF, usando un elemento de encabezado simple en este caso. El método saveAs es entonces utilizado para exportar el PDF generado a un archivo llamado "output.pdf".
La naturaleza asincrónica del código se gestiona mediante el uso de la sintaxis async/await, asegurando que los procesos de generación y guardado de datos PDF ocurran de manera no bloqueante. En general, este ejemplo sucinto demuestra cómo IronPDF simplifica la creación y manipulación de PDFs en un entorno Node.js.
Resultado
Salida PDF generada desde una cadena HTML usando la biblioteca IronPDF
4.2. Crear archivos PDF desde una URL usando IronPDF
Crear archivos PDF desde una URL usando IronPDF en Node.js es una característica poderosa que le permite convertir contenido web en documentos PDF de manera programática. Aquí hay un ejemplo de fragmento de código que demuestra cómo lograr esto:
import { PdfDocument } from "@ironsoftware/ironpdf";
(async () => {
// URL of the web page to convert to PDF
const url = "https://google.com";
// Create a PDF doc from the specified URL
const pdf = await PdfDocument.fromUrl(url);
// Save the PDF to a file
await pdf.saveAs("output_from_url.pdf");
})();
En este código:
- La clase
PdfDocumentes importada del paquete IronPDF. - Dentro de una función asincrónica (envuelta en una expresión de función invocada inmediatamente), se define una variable
urlcon la URL de la página web que desea convertir a PDF. - Luego se utiliza el método
fromUrlpara crear un documento PDF a partir de la URL especificada. IronPDF obtiene el contenido de la URL y lo convierte en un documento PDF. - Finalmente, se emplea el método
saveAspara guardar el PDF generado en un archivo llamado "output_from_url.pdf".
Este ejemplo muestra la simplicidad de usar IronPDF para convertir contenido web de una URL en un archivo PDF, haciendo de él una herramienta valiosa para escenarios donde el contenido web dinámico necesita ser archivado o compartido en formato PDF.
Salida PDF generada desde una URL usando la biblioteca IronPDF
4.3. Generación de archivos PDF a partir de imágenes utilizando IronPDF
Además de HTML, IronPDF proporciona funcionalidad para generar archivos PDF a partir de imágenes. Esto es particularmente útil cuando se trata de escenarios donde se necesita compilar imágenes en un único documento PDF. Exploremos un ejemplo simple:
import { PdfGenerator } from "@ironsoftware/ironpdf";
import fs from "fs";
(async () => {
// Specify the directory path
const directoryPath = "./images";
// Read the contents of the directory
fs.readdir(directoryPath, (err, files) => {
if (err) {
console.error("Error reading directory:", err);
return;
}
// Filter file names to include only .jpg and .jpeg extensions
const jpegFiles = files.filter(
(file) =>
file.toLowerCase().endsWith(".jpg") || file.toLowerCase().endsWith(".jpeg")
);
// Construct full file paths for the filtered files
const filePaths = jpegFiles.map((file) => `${directoryPath}/${file}`);
// Converts the images to a PDF and save it.
PdfGenerator.imageToPdf(filePaths).then((returnedPdf) => {
returnedPdf.saveAs("composite.pdf");
});
// Also see PdfDocument.rasterizeToImageFiles() method to flatten a PDF to images or thumbnails
});
})();
Este código utiliza IronPDF, una biblioteca de Node.js, para convertir una colección de imágenes JPEG en un directorio especificado en un solo documento PDF. Inicialmente, el código especifica la ruta del directorio que contiene las imágenes. Luego lee el contenido del directorio usando la función fs.readdir. Subsecuentemente, filtra los nombres de archivo para incluir solo aquellos con extensiones ".jpg" o ".jpeg".
Se construyen las rutas completas de los archivos para las imágenes filtradas, y se emplea el método PdfGenerator.imageToPdf para convertir estas imágenes en un documento PDF. El PDF resultante se guarda luego como "composite.pdf". Este script demuestra el proceso simplificado ofrecido por IronPDF para convertir un lote de imágenes en un archivo PDF consolidado, proporcionando una solución práctica para escenarios donde se necesita compilar y presentar contenido de imágenes en un único documento.
PDF de salida generado a partir de imágenes usando la biblioteca IronPDF
5. Conclusión
Node.js, acompañado de IronPDF, abre un mundo de posibilidades para la creación dinámica de PDFs. Desde documentos simples basados en texto hasta informes complejos con contenido dinámico, IronPDF simplifica el proceso y mejora las capacidades de sus aplicaciones Node.js. Ya sea que esté convirtiendo HTML a PDF, populando plantillas o compilando imágenes en un archivo PDF, IronPDF proporciona una solución versátil y eficiente para sus necesidades de generación de PDF.
A medida que continúa explorando e implementando estas características, encontrará que la biblioteca Node.js de IronPDF es una herramienta valiosa en su kit de herramientas de desarrollador, simplificando el proceso de creación de documentos PDF dinámicos y visualmente atractivos.
IronPDF for Node.js ofrece una prueba gratuita para sus usuarios. Para comenzar con IronPDF visite esta página de documentación. El ejemplo de código y el tutorial completo de la conversión de HTML a PDF se pueden encontrar en la siguiente página de tutorial.

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.
Artículos Relacionados


