Cómo convertir un PDF en un archivo de imagen

Para convertir archivos PDF en imágenes, utilice el método rasterizeToImageFiles proporcionado por el módulo NodeJS de IronPDF. Puede configurar este método para que admita diversas operaciones de conversión de PDF a imagen. Convierte PDF a JPG, PNG y otros formatos de imagen. Convierta cada página PDF en una imagen JPEG o PNG, o convierta sólo unas pocas páginas. IronPDF te da el control total._

Continúe leyendo para aprender a realizar tareas de conversión de PDF a imagen con IronPDF para Node.js!

Instalar IronPDF con NPM

Biblioteca Node.js para PDF

Instalar con npm

 npm i @ironsoftware/ironpdf

**Instala el módulo Nodejs de IronPDF desde NPM para convertir PDFs a PNG, JPG (o JPEG)GIF y otros tipos de imágenes.

Convertir PDF a formato de imagen

Supongamos que estamos trabajando con un Documento PDF de muestra de una página que contiene texto de marcador de posición.

Cómo convertir un PDF en un archivo de imagen, Figura 1

Una imagen de nuestro archivo PDF de muestra abierto en un visor de PDF. Descargue este archivo PDF y otros con fines de prueba del contenedor de aprendizaje: https://www.learningcontainer.com/

El siguiente código fuente convierte el archivo PDF en un archivo PNG.

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

//  Convertir un archivo PDF en un archivo PNG
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
    resolve.rasterizeToImageFiles("./images/sample-pdf-file.png");
    return resolve;
});
NODE.JS

Usamos el método PdfDocument.fromFile para cargar nuestro documento de ejemplo en la librería Node. Esta función proporciona un DocumentoPdf que representa nuestro archivo de ejemplo. Dado que el objeto que necesitamos está contenido en un archivo Promesaadjuntamos una función callback para que se ejecute cuando la promesa resuelva el PdfDocument.

Dentro de la devolución de llamada, llamamos a la función rasterizar a archivos de imagen en el objeto resuelto para convertir el documento de una sola página en una imagen. Como se muestra arriba, especificamos la ruta de destino (que incluye el nombre y la extensión del archivo) para nuestra nueva imagen como argumento.

Cómo convertir un PDF en un archivo de imagen, Figura 2

La imagen se generó a partir del código fuente anterior. IronPDF convirtió nuestro PDF de muestra en un archivo PNG en tan sólo tres líneas de código!

El contenedor de aprendizaje proporciona archivos PDF de muestra que puede utilizar en sus proyectos para realizar pruebas. Puede descargar el archivo PDF de muestra utilizado en este ejemplo de forma gratuita (junto con archivos de muestra similares) del sitio web. No dude en probar el ejemplo anterior con otros PDF de distintos tamaños y complejidad.

En la siguiente sección se ofrecen detalles adicionales sobre la conversión de PDF a imagen que merece la pena tener en cuenta.

Opciones avanzadas de conversión de imágenes

Convertir PDF a JPEG

Por defecto, rasterizeToImageFiles convierte los documentos según el tipo de archivo especificado en la ruta de destino.

Por lo tanto, para convertir nuestro PDF de muestra utilizado en el ejemplo anterior en un archivo JPG (en lugar de convertir PDF a PNG)podemos simplemente cambiar la extensión del nombre del archivo utilizado en la ruta del archivo de destino:

//  Convertir PDF a JPG (no a PNG)
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");
NODE.JS

Otra forma de hacer lo mismo es especificar un(n) Tipo de imagen. Un valor ImageType sustituye al tipo de archivo de imagen declarado en la ruta de destino. Esto obliga a rasterizeToImageFiles a no tener en cuenta el nombre del archivo al realizar tareas de conversión de imágenes a PDF.

Puede verlo en acción en el siguiente ejemplo. Aquí, incluimos un argumento de opciones JSON con nuestra llamada a rasterizeToImageFiles que declara un ImageType.

import {PdfDocument, ImageType} from "@ironsoftware/ironpdf";

//  Convertir PDF a formato JPEG utilizando ImageType.JPG
const options = {
   type: ImageType.JPG
};
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
    pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.png", options);
    return resolve;
});
NODE.JS

Ejecutando el programa anterior también se crea una imagen JPG como en nuestro ejemplo anterior. Observe, sin embargo, que el nombre del archivo de destino sigue utilizando la extensión PNG. rasterizeToImageFiles ignoraba la extensión de nombre de archivo .PNG utilizada en la ruta, siguiendo en su lugar el valor de tipo ImageType.JPG.

Puede adaptar este ejemplo para convertir PDF en otros tipos de imagen, incluidos los formatos GIF y Bitmap.

Consejo: Utilizar este método puede ser particularmente útil en situaciones en las que cambiar los nombres de los archivos a tipos específicos no es factible o deseado.

Convertir archivos PDF con varias páginas

Para convertir documentos que contienen más de una página en un tipo de imagen deseado (PNG, JPG, mapa de bits, etc.)También podemos utilizar el método rasterizeToImageFiles de la misma manera que antes. Cuando se invoca, el método mostrará cada página como una imagen independiente del tipo especificado.

Cómo convertir un PDF en imágenes, Figura 3

**Un documento PDF de muestra de dos páginas.

El siguiente bloque de código de ejemplo genera dos archivos PNG a partir del archivo documento de dos páginas que se muestra arriba.

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

//  Convertir PDF con dos páginas en un conjunto de imágenes.
await PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});
NODE.JS

Cómo convertir un PDF en imágenes, Figura 4

**El resultado de utilizar el método rasterizeToImageFiles en un archivo PDF de dos páginas. El método crea una imagen para cada página del archivo original.

Convertir páginas PDF específicas en imágenes

Declarar un objeto JSON con la propiedad fromPages nos permite rasterizar una o más páginas de un documento multipágina (en lugar de todas las páginas).

El siguiente ejemplo de código sólo convierte la primera, cuarta, sexta y novena página de este archivo de muestra grande en mapas de bits.

import {PdfDocument, ImageType} from "@ironsoftware/ironpdf";

//  Convierte PDF con muchas páginas en imágenes BMP.
const options = {
    type: ImageType.BMP,
    fromPages: [0, 3, 5, 8]  //  Seleccione sólo las páginas que contengan una imagen.
}
await PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
    pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
});
NODE.JS

Cómo convertir un PDF en imágenes, Figura 5

**IronPDF realizó la operación de conversión de PDF a imagen sólo en las páginas que especificamos en el argumento "opciones".

Lecturas complementarias

Referencia API

Lee la documentación de la API sobre la clase PdfDocument y sus métodos rasterizeToImageFiles para obtener más información sobre cómo adaptar el método a tus necesidades.

Ejemplos de códigos