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 for Node.js!
Instalar IronPDF con NPM
![Biblioteca Node.js para PDF](/img/icons/n-large.png)
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.
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";
// Convert PDF File to a PNG File
await PdfDocument.fromFile("./sample-pdf-file.pdf").then((resolve) => {
resolve.rasterizeToImageFiles("./images/sample-pdf-file.png");
return resolve;
});
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.
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:
// Convert PDF to JPG (not to PNG)
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");
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";
// Convert PDF to JPEG Format using 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;
});
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.
**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";
// Convert PDF with two pages to a set of images.
await PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});
**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";
// Convert PDF containing many pages to BMP images.
const options = {
type: ImageType.BMP,
fromPages: [0, 3, 5, 8] // Select only the pages with an image on it.
}
await PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-selective-pdf/multipage-pdf-page.bmp", options);
});
**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
- Convertir un PDF en imágenes: Ver
rasterizeToImageFiles
utilizado de una manera ligeramente diferente. - Pasar imágenes a PDF: Aprenda a convertir una o varias imágenes en un único archivo PDF.