Passer au contenu du pied de page
OUTILS PDF

Comment convertir un PDF en image en NodeJS

La conversion de documents PDF en formats d'image tels que PNG, JPG, GIF peut être une fonctionnalité précieuse dans diverses applications, allant des systèmes de gestion de documents aux logiciels de traitement d'image. Dans cet article, nous apprendrons comment convertir un PDF en fichiers image en utilisant Node.js. Nous allons exploiter la puissance d'un paquet npm (Node Package Manager) populaire appelé pdf-poppler pour accomplir cette tâche.

Prérequis

Tout d'abord, assurez-vous d'avoir Node.js et npm (Node Package Manager) installés sur votre machine. Vous pouvez vérifier les installations de Node en exécutant les commandes suivantes dans votre invite de commande (cmd) :

node --version
npm --version
node --version
npm --version
SHELL

S'il n'est pas installé, vous devrez le télécharger depuis le site Web de Node.js.

Comment convertir un PDF en image dans NodeJS : Figure 1 - module Node.js

Configuration du projet

Pour commencer, créez un nouveau répertoire pour votre projet. Pour ce tutoriel, nommons ce répertoire NodeJS_PDFtoImage. Ensuite, accédez-y dans l'invite de commande et initialisez un nouveau projet Node.js en exécutant :

npm init -y
npm init -y
SHELL

L'exécution de la commande ci-dessus produira un fichier package.json qui nous permettra d'installer les dépendances requises pour notre projet.

Installation des dépendances

La dépendance que nous utiliserons est pdf-poppler, un paquet qui fournit une API facile à utiliser pour convertir les PDF en images.

Installez-le en exécutant la commande suivante dans Windows PowerShell ou l'Invite de commande :

npm install pdf-poppler
npm install pdf-poppler
SHELL

Tout est fait ! Écrivons la logique pour convertir le PDF en images.

Conversion d'un PDF en fichier image

Une fois l'installation terminée, créez un nouveau fichier dans le répertoire racine de notre projet et nommez-le pdfToImage.js. Ouvrez le fichier dans votre éditeur de texte préféré et ajoutez les modules requis :

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

Un exemple de fichier PDF de 28 pages est présenté ci-dessous.

Comment convertir un PDF en image dans NodeJS : Figure 2 - Fichier d'entrée

Ensuite, définissez une fonction appelée convertPdfToImage qui prend en paramètre le chemin vers le fichier PDF (pdfPath) et le chemin du répertoire de sortie (outputPath). Cette fonction convertira notre document PDF d'exemple en images.

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);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

La fonction utilise le paquet pdf-poppler pour convertir le PDF en format d'image JPEG. Nous réglons l'option format sur 'jpeg' dans ce cas, mais vous pouvez choisir d'autres formats tels que 'png' ou 'tiff'. L'option out_dir spécifie le répertoire où les images de sortie seront enregistrées, et out_prefix définit un préfixe pour les fichiers d'images de sortie. L'option page vous permet de spécifier une page particulière à convertir, ou vous pouvez la laisser nulle pour convertir toutes les pages.

Pour convertir un fichier PDF en images, vous pouvez appeler la fonction convertPdfToImage avec les chemins de fichiers appropriés. Par exemple :

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

convertPdfToImage(pdfPath, outputPath);

Remarque : Remplacez la valeur pdfPath par "/path/to/input.pdf" avec le chemin réel vers le fichier PDF d'entrée et "/path/to/output/folder" avec le chemin du répertoire de sortie souhaité.

Le code complet est le suivant :

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);

Exécuter le script Node.js

Exécutez le script Node.js en exécutant la commande suivante :

node pdfToImage.js
node pdfToImage.js
SHELL

Cela exécutera le script Node.js et convertira le PDF en fichiers image en utilisant pdf-poppler.

Comment convertir un PDF en image dans NodeJS : Figure 3 - Script Node.js

Dossier de sortie

Comment convertir un PDF en image dans NodeJS : Figure 4 - Sortie

Rasteriser un fichier PDF en image en C#

IronPDF pour C# .NET

IronPDF est une bibliothèque .NET polyvalente qui permet aux développeurs C# de travailler avec des documents PDF à la volée. Elle offre des fonctionnalités complètes pour créer, manipuler et convertir des fichiers PDF en C#.

IronPDF offre un moyen pratique de convertir des documents PDF en fichiers images utilisant C#. Cette fonctionnalité est particulièrement utile lorsqu'il est nécessaire d'extraire des images ou de générer des vignettes d'image à partir de fichiers PDF de manière programmatique.

Pour convertir en images en utilisant IronPDF, vous pouvez suivre les étapes dans l'extrait de code ci-dessous :

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

Comment convertir un PDF en image dans NodeJS : Figure 5 - Sortie PDF Image Node JS

C'est aussi simple que cela de convertir un PDF en fichier image en utilisant IronPDF. Pour plus de détails sur la conversion de PDF en image, veuillez visiter cette page des exemples de code.

Conclusion

Dans cet article, nous avons exploré comment convertir des fichiers PDF en images dans Node.js en utilisant le paquet pdf-poppler. En suivant les étapes décrites, vous pouvez intégrer des capacités de conversion PDF-en-image dans vos applications Node.js, permettant une large gamme de possibilités pour manipuler et traiter des documents PDF de manière programmatique.

D'autre part, IronPDF est une bibliothèque C# puissante qui facilite les tâches de manipulation et de conversion PDF. Sa capacité à convertir du PDF en images offre une manière pratique d'extraire des images ou de générer des représentations d'image des pages de PDF de manière programmatique. En utilisant les fonctionnalités d'IronPDF, les développeurs peuvent intégrer de manière transparente la fonctionnalité de conversion de PDF en image dans leurs applications C#.

IronPDF est gratuit pour le développement et peut être licencié pour une utilisation commerciale. De plus, vous pouvez également l'utiliser en mode commercial avec un essai gratuit.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite