USO DE IRONPDF FOR NODE.JS

Cómo generar un archivo PDF a partir de una plantilla en Node.js

Darrius Serrant
Darrius Serrant
17 de noviembre, 2023
Actualizado 8 de octubre, 2024
Compartir:

Este artículo explorará un ejemplo de cómo puedes generar un documento PDF a partir de una plantilla HTML utilizando una biblioteca PDF llamada IronPDF for Node.js.

Qué es IronPDF for Node.js

IronPDF for Node.js es una herramienta poderosa y versátil que se integra perfectamente con Node.js, permitiendo a los desarrolladores generar, manipular y gestionar documentos PDF sin esfuerzo dentro de sus aplicaciones. Con su completo conjunto de funciones y una API intuitiva, IronPDF permite a los desarrolladores agilizar sus diversas tareas relacionadas con la creación de PDF, desde la creación de documentos visualmente atractivos hasta la adición de elementos interactivos, todo ello manteniendo un alto nivel de control y personalización. Tanto si se trata de generar informes, facturas u otra documentación vital, IronPDF for Node.js ofrece una solución fiable y eficaz para satisfacer una gran variedad de necesidades de generación de páginas PDF de forma fluida y sencilla para los desarrolladores.

Características de IronPDF

  1. Generación de PDF desde HTML/CSS: Crea documentos PDF desde fuentes HTML y CSS. Permite convertir páginas web o plantillas HTML en formato PDF.

  2. Manipulación y Edición de PDFs: Edita y modifica PDFs existentes añadiendo, eliminando o actualizando texto, imágenes, anotaciones y otros elementos dentro del archivo PDF.

  3. Combinación y División de PDFs: Combina múltiples documentos PDF en uno (combinación) o divide un solo PDF en varios PDFs más pequeños.

  4. Impresión y manejo de formularios: Controla la configuración de impresión y maneja formularios interactivos dentro de los PDFs, incluyendo el envío y la validación de formularios.

  5. Seguridad y Cifrado: Implementar medidas de seguridad como protección con contraseña, cifrado, control de acceso y firmas digitales para proteger los documentos PDF.

  6. Extracción de Texto: Extrae texto y datos de PDFs, permitiéndote usar el contenido en otras aplicaciones o para análisis de datos.

  7. Personalización: Personaliza la apariencia y el diseño de documentos PDF, incluyendo el tamaño de la página, las fuentes, los colores, los encabezados, los pies de página y otros elementos de diseño.

  8. Compatibilidad multiplataforma: Asegúrese de que la biblioteca sea compatible con Node.js en diferentes sistemas operativos, haciéndola versátil para desarrolladores que trabajan en varias plataformas.

Instalación de IronPDF for Node.js

En esta sección se explica cómo instalar IronPDF for Node.js y configurar un proyecto Node.js.

Antes de empezar, asegúrese de que Node.js está instalado en su sistema.

  1. Abra el Símbolo del sistema (CMD) e inicie un nuevo proyecto de Node.js usando los siguientes comandos:
    mkdir IronPDF   # Creates a new directory for the project.

    cd IronPDF      # Navigates to the newly created directory.

    npm init -y     # Creates a package.json file to store project-related metadata and dependencies.

Cómo generar un archivo PDF a partir de una plantilla en Node.js, Figura 1: Abre la terminal de comandos (CMD) y ejecuta el comando

Abre el Símbolo del sistema (CMD) y ejecuta el comando

  1. Una vez completada la configuración inicial, instale IronPDF utilizando el siguiente comando:

    ```:shell

    Instalación del producto

  2. Abra el proyecto en Visual Studio Code y cree un nuevo archivo llamado "index.js".

  3. Abra el archivo package.json y añada la siguiente línea en "type" para habilitar el uso del módulo:
    "type": "module",

Cómo generar un archivo PDF desde una plantilla en Node.js, Figura 2: El archivo package.json de ejemplo

El archivo package.json de ejemplo

Con estos pasos, IronPDF for Node.js se instala con éxito y el entorno está configurado para ejecutar el código de IronPDF.

Crear PDF desde una plantilla HTML usando IronPDF for Node.js

IronPDF for Node.js ofrece una función que permite a los usuarios crear PDF a partir de una plantilla HTML o de una página HTML. Esta funcionalidad permite a los usuarios rellenar estas plantillas con entradas proporcionadas por el usuario.

El código proporcionado a continuación demostrará cómo generar y escribir un documento PDF utilizando una plantilla HTML.

import { PdfDocument } from "@ironsoftware/ironpdf";
import readline from 'readline';

const generatePdf = async (userInput, fileName) => {
  // HTML template with placeholders
  const htmlTemplate = `
<!DOCTYPE html>
  <html>
  <body>
    <h1>${userInput.title}</h1>
    <p>User's name: ${userInput.userName}</p>
    <p>User's email: ${userInput.userEmail}</p>
  </body>
  </html>
`;

  // Create a PDF from the modified HTML template
  const pdf = await PdfDocument.fromHtml(htmlTemplate);

  // Save the PDF
  await pdf.saveAs(fileName);
  console.log(`PDF saved as ${fileName}`);
};

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

rl.question('Enter title: ', (title) => {
  rl.question('Enter user name: ', (userName) => {
    rl.question('Enter user email: ', async (userEmail) => {
      // User-provided data
      const userInput = {
        title,
        userName,
        userEmail
      };

      // Generate the PDF
      await generatePdf(userInput, "output.pdf");

      rl.close();
    });
  });
});
NODE.JS

El ejemplo de código anterior define un programa JavaScript que toma la entrada del usuario para un título, nombre de usuario y correo electrónico del usuario a través de la línea de comandos utilizando el módulo readline. El método generatePdf() se define para crear un documento PDF utilizando una plantilla HTML proporcionada y guardarlo con el nombre de archivo dado. La plantilla HTML incluye marcadores de posición para el título, el nombre de usuario y el correo electrónico del usuario, que se rellenan con los datos proporcionados por el usuario. La clase PdfDocument del paquete @ironsoftware/ironpdf se utiliza para crear el PDF a partir de la plantilla HTML. Tras generar el PDF, se guarda con el nombre de archivo especificado y se registra en la consola un mensaje que confirma el guardado.

El módulo readline se utiliza para solicitar al usuario datos relevantes como entrada, pidiendo el título, nombre de usuario y correo electrónico en una secuencia de preguntas. Las respuestas del usuario a estas indicaciones se recopilan y almacenan en un objeto llamado userInput. El método generatePdf() se llama a continuación con esta entrada de usuario y un nombre de archivo predeterminado "output.pdf" para crear y guardar o descargar el documento PDF basado en los datos proporcionados. Por último, se cierra la interfaz readline, finalizando el programa.

Prueba de Generación de PDF#1

Cómo generar un archivo PDF desde una plantilla en Node.js, Figura 3: La salida de la consola

La salida de la consola

Cómo generar un archivo PDF desde una plantilla en Node.js, Figura 4: El output.pdf

El output.pdf

Prueba de Generación de PDF#2

Cómo generar un archivo PDF a partir de una plantilla en Node.js, Figura 5: La salida de la consola

La salida de la consola

Cómo generar un archivo PDF desde una plantilla en Node.js, Figura 6: El archivo output.pdf

El archivo output.pdf

Conclusión

Este tutorial desveló el proceso de utilizar Node.js para generar PDFs sin esfuerzo al combinar datos dinámicos con plantillas predefinidas, destacando el papel fundamental de IronPDF.

IronPDF for Node.js se integra perfectamente con Node.js, permitiendo a los desarrolladores crear, manipular y gestionar documentos PDF de manera efectiva, presentando un conjunto completo de características como la generación de PDF desde HTML/CSS, la edición de archivos PDF existentes, su fusión/división, el manejo de formularios, asegurando la seguridad, permitiendo la extracción de texto y la personalización.

El proceso de instalación paso a paso y el ejemplo práctico demostraron cómo implementar IronPDF de forma eficaz dentro de un proyecto Node.js. Al integrar a la perfección la generación de PDF basada en plantillas, los desarrolladores pueden satisfacer eficazmente diversas necesidades de generación de documentos, lo que convierte a Node.js e IronPDF en una potente combinación para una generación de PDF ágil y sencilla para los desarrolladores. Esta misma técnica puede utilizarse para generar facturas de forma dinámica sobre la marcha.

Puedes instalar IronPDF para Node.js y encontrar los ejemplos de código en la siguiente página web de npm.

IronPDF ofrece una licencia de prueba gratuita, para que los usuarios puedan probar todas las características que ofrece IronPDF antes de comprar. Para obtener más información, por favor visite la página de licencias de IronPDF.

Darrius Serrant
Ingeniero de Software Full Stack (WebOps)

Darrius Serrant tiene una licenciatura en Informática de la Universidad de Miami y trabaja como Ingeniero de Marketing WebOps Full Stack en Iron Software. Atraído por la programación desde una edad temprana, veía la computación como algo misterioso y accesible, lo que la convertía en el medio perfecto para la creatividad y la resolución de problemas.

En Iron Software, Darrius disfruta creando cosas nuevas y simplificando conceptos complejos para hacerlos más comprensibles. Como uno de nuestros desarrolladores residentes, también se ha ofrecido como voluntario para enseñar a los estudiantes, compartiendo su experiencia con la próxima generación.

Para Darrius, su trabajo es gratificante porque es valorado y tiene un impacto real.

< ANTERIOR
Cómo descargar archivos PDF desde una URL en Node.js
SIGUIENTE >
Node.js PDF SDK (Tutorial para desarrolladores)

¿Listo para empezar? Versión: 2025.3 acaba de salir

Ver licencias >