HERRAMIENTAS PDF

Cómo convertir PDF a imagen en NodeJS

La conversión de documentos PDF a formatos de imagen como PNG, JPG, GIF puede ser una función muy valiosa en diversas aplicaciones, desde sistemas de gestión de documentos a software de procesamiento de imágenes. En este artículo, aprenderemos cómo convertir PDF a archivos de imagen utilizando Node.js. Vamos a aprovechar el poder de un paquete popular de npm (Node Package Manager) llamado pdf-poppler para lograr esta tarea.

Requisitos previos

Primero, asegúrate de tener Node.js y npm (Node Package Manager) instalados en tu máquina. Puedes verificar las instalaciones de Node ejecutando los siguientes comandos en tu terminal de comandos (cmd):

node --version
npm --version
node --version
npm --version
NODE.JS

Si no está instalado, necesitará descargarlo del sitio web de Node.js.

Cómo convertir un PDF a imagen en NodeJS: Figura 1 - Módulo de Node.js

Configuración del proyecto

Para empezar, cree un nuevo directorio para su proyecto. Para este tutorial, llamemos a este directorio NodeJS_PDFtoImage. A continuación, navega a él en el símbolo del sistema e inicializa un nuevo proyecto de Node.js ejecutando:

npm init -y
npm init -y
NODE.JS

Ejecutando el comando anterior se producirá un archivo package.json que nos permitirá instalar las dependencias necesarias de nuestro proyecto.

Instalación de dependencias

La dependencia que usaremos es pdf-poppler, un paquete que proporciona una API fácil de usar para convertir PDFs en imágenes.

Instálelo ejecutando el siguiente comando en Windows PowerShell o Símbolo del sistema:

npm install pdf-poppler
npm install pdf-poppler
NODE.JS

¡Todo listo! Escribamos la lógica para convertir PDF a imagen.

Convertir PDF en archivo de imagen

Una vez completada la instalación, crea un nuevo archivo en el directorio raíz de nuestro proyecto y nómbralo pdfToImage.js. Abra el archivo en su editor de texto preferido y añada los módulos necesarios:

const pdfPoppler = require('pdf-poppler');
const pdfPoppler = require('pdf-poppler');
NODE.JS

A continuación se muestra un ejemplo de archivo PDF de 28 páginas.

Cómo convertir PDF a imagen en NodeJS: Figura 2 - Archivo de entrada

A continuación, define una función llamada convertPdfToImage que recibe la ruta al archivo PDF pdfPath y la ruta al directorio de salida (outputPath). Esta función convertirá nuestro documento PDF de muestra en imágenes.

async function convertPdfToImage(pdfPath, outputPath) {
  const options = {
    format: 'jpeg',  // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null  // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, options);
    //log message
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}
async function convertPdfToImage(pdfPath, outputPath) {
  const options = {
    format: 'jpeg',  // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null  // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, options);
    //log message
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}
NODE.JS

La función utiliza el paquete pdfPoppler para convertir el PDF al formato de imagen JPEG. En este caso, establecemos la opción format a 'JPEG', pero puedes elegir otros formatos como 'PNG' o 'TIFF'. La opción out_dir especifica el directorio donde se guardarán las imágenes de salida, y out_prefix establece un prefijo para los archivos de imagen de salida. La opción page te permite especificar una página en particular para convertir, o puedes dejarla como null para convertir todas las páginas.

Para convertir un archivo PDF a imágenes, puedes llamar a la función convertPdfToImage con las rutas de archivo apropiadas. Por ejemplo:

const pdfPath = '/path/to/input.pdf';
const outputPath = '/path/to/output/folder';

convertPdfToImage(pdfPath, outputPath);
const pdfPath = '/path/to/input.pdf';
const outputPath = '/path/to/output/folder';

convertPdfToImage(pdfPath, outputPath);
NODE.JS

Nota: Reemplace el valor pdfPath "/ruta/al/archivo.pdf" con la ruta real al archivo PDF de entrada y "/ruta/a/carpeta/de/salida" con la ruta deseada del directorio de salida.

El código completo es el siguiente:

const pdfPoppler = require('pdf-poppler');

const pdfPath = 'C:\\Users\\hp\\Desktop\\NodeJS_PDFtoImage\\pdf_files\\input.pdf';
const outputDir = 'C:\\Users\\hp\\Desktop\\NodeJS_PDFtoImage\\pdf_images';

async function convertPdfToImage(pdfPath, outputPath) {
  const opts = {
    format: 'jpeg',      // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null           // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, opts);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

convertPdfToImage(pdfPath, outputDir);
const pdfPoppler = require('pdf-poppler');

const pdfPath = 'C:\\Users\\hp\\Desktop\\NodeJS_PDFtoImage\\pdf_files\\input.pdf';
const outputDir = 'C:\\Users\\hp\\Desktop\\NodeJS_PDFtoImage\\pdf_images';

async function convertPdfToImage(pdfPath, outputPath) {
  const opts = {
    format: 'jpeg',      // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null           // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, opts);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

convertPdfToImage(pdfPath, outputDir);
NODE.JS

Ejecutar el script Node.js

Ejecute el script Node.js ejecutando el siguiente comando:

node pdfToImage.js
node pdfToImage.js
NODE.JS

Esto ejecutará el script de Node.js y convertirá el PDF en archivos de imagen utilizando pdf-poppler.

Cómo convertir PDF a imagen en NodeJS: Figura 3 - Script de Node.js

Carpeta de salida

Cómo convertir PDF a imagen en NodeJS: Figura 4 - Resultado

Rasterizar Archivo PDF a Imagen en C#

IronPDF para C# .NET

IronPDF es una versátil biblioteca .NET que permite a los desarrolladores de C# trabajar con documentos PDF sobre la marcha. Proporciona funciones completas para crear, manipular y convertir archivos PDF dentro de C#

IronPDF ofrece una forma cómoda de convertir documentos PDF en archivos de imagen utilizando C#. Esta funcionalidad es especialmente útil cuando se necesita extraer imágenes o generar miniaturas de imágenes de archivos PDF mediante programación.

Para convertir a imágenes utilizando IronPDF, puede seguir los pasos del siguiente fragmento de código:

using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing

Private pdf = PdfDocument.FromFile("input.pdf")

' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")

' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)

' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
$vbLabelText   $csharpLabel

Cómo Convertir PDF a Imagen en NodeJS: Figura 5 - Resultado de PDF a Imagen en Node JS

Así de fácil es convertir PDF a archivo de imagen con IronPDF. Para obtener más detalles sobre la conversión de PDF a imagen, visite esta página de ejemplos de código.

Conclusión

En este artículo, exploramos cómo convertir archivos PDF a imágenes en Node.js utilizando el paquete pdf-poppler. Siguiendo los pasos descritos, podrá integrar funciones de conversión de PDF a imágenes en sus aplicaciones Node.js, lo que le permitirá una amplia gama de posibilidades para manejar y manipular documentos PDF mediante programación.

Por otro lado, IronPDF es una potente biblioteca de C# que facilita las tareas de manipulación y conversión de PDF. Su capacidad para convertir PDF en imágenes ofrece una forma cómoda de extraer imágenes o generar representaciones de imágenes de páginas PDF mediante programación. Aprovechando las funciones de IronPDF, los desarrolladores pueden integrar sin problemas la funcionalidad de conversión de PDF a imágenes en sus C#

IronPDF es gratuito para el desarrollo y puede adquirirse bajo licencia para uso comercial. Además, también puedes usarlo en modo comercial con una prueba gratuita.

Chipego
Ingeniero de software
Chipego tiene una habilidad natural para escuchar que le ayuda a comprender los problemas de los clientes y a ofrecer soluciones inteligentes. Se unió al equipo de Iron Software en 2023, después de estudiar una licenciatura en Tecnología de la Información. IronPDF e IronOCR son los dos productos en los que Chipego se ha centrado, pero su conocimiento de todos los productos crece día a día, a medida que encuentra nuevas formas de ayudar a los clientes. Disfruta de lo colaborativa que es la vida en Iron Software, con miembros del equipo de toda la empresa que aportan su variada experiencia para contribuir a soluciones eficaces e innovadoras. Cuando Chipego está lejos de su escritorio, a menudo se le puede encontrar disfrutando de un buen libro o jugando al fútbol.
< ANTERIOR
Cómo abrir archivos PDF en Chrome
SIGUIENTE >
Cómo ver archivos PDF en C++