UTILISER IRONPDF POUR NODE.JS

Comment extraire des images d'un PDF en Node.js

Extraire des images de fichiers PDF est une tâche courante pour de nombreux développeurs, que ce soit pour le traitement de fichiers, l'extraction de données ou la création d'aperçus de documents. Dans cet article, nous allons explorer comment extraire et enregistrer des images à partir d'un PDF en utilisant IronPDF, une bibliothèque PDF puissante disponible pour .NET, et comment elle peut être intégrée dans un environnement Node.js via son paquet NPM.

Comment extraire des images de fichiers PDF en utilisant IronPDF Node.js

  1. Configurer une application Node.js.

  2. Installez les packages NPM IronPDF.

  3. Préparer un PDF pour l'extraction.

  4. Extraire les images du fichier PDF et enregistrer.

Conditions préalables

Si vous n'avez pas encore installé Node.js, téléchargez-le et installez-le depuis https://nodejs.org/.

Présentation du package NPM IronPDF

Le paquet NPM IronPDF est un embrayage Node.js pour la bibliothèque IronPDF, initialement conçue pour les environnements .NET. Il permet aux développeurs d'exploiter les puissantes fonctionnalités de manipulation de PDF d'IronPDF dans les applications Node.js. Ce package est particulièrement utile pour travailler avec des documents PDF, offrant une gamme de fonctionnalités qui peuvent être utiles dans de nombreuses applications pratiques telles que le traitement de fichiers, la génération de rapports, et plus encore.

Caractéristiques principales de IronPDF dans Node.js

  1. Création de PDF :

    IronPDF peut créer des fichiers PDF à partir de diverses sources, y compris du contenu HTML, des images ou même du texte brut. Cette fonctionnalité est très utile pour les applications web qui nécessitent de générer des rapports, des factures ou tout autre document au format PDF.

    IronPDF prend en charge le style et la mise en forme du contenu HTML, ce qui en fait un excellent choix pour convertir des pages Web en documents PDF bien structurés.

  2. Édition de PDF :

    IronPDF vous permet de manipuler des PDFs existants en ajoutant du texte, des images ou des annotations, et en modifiant la mise en page. Vous pouvez également fusionner plusieurs PDFs en un seul, diviser un grand document en parties plus petites, ou même réorganiser les pages dans un PDF.

    Ces fonctionnalités le rendent idéal pour les applications qui doivent modifier dynamiquement des PDFs, telles que les systèmes de gestion de documents ou les applications nécessitant la génération automatique de documents.

  3. Conversion PDF :

    L'une des caractéristiques remarquables d'IronPDF est sa capacité à convertir des PDF en divers autres formats. Par exemple, il peut convertir des documents PDF en images (PNG, JPEG), HTML et formats Word.

    Cette fonctionnalité est particulièrement utile lorsque vous devez présenter le contenu d'un PDF sous différents formats ou créer des aperçus d'images de PDFs pour les interfaces utilisateur.

  4. Extraction de texte et d'images :

    Bien qu'IronPDF ne dispose pas d'une API REST directe pour extraire des images brutes d'un PDF, il offre une méthode pour rendre les pages PDF sous forme d'images (telles que PNG ou JPEG), ce qui peut être utilisé comme un moyen indirect d'extraire du contenu.

    Vous pouvez rendre chaque page du PDF en une image, capturant ainsi efficacement la représentation visuelle du document, et la sauvegarder pour une utilisation ultérieure ou pour affichage.

  5. Rendu des pages sous forme d'images :

    IronPDF peut convertir des pages PDF en images de haute qualité. Par exemple, vous pouvez convertir un PDF multipage en une série de PNG, un pour chaque page. Cela est particulièrement utile lorsque vous devez afficher les pages sous forme de vignettes ou dans un format basé sur des images. Il prend en charge différents types de formats d'image.

  6. Sécurité et Chiffrement :

    IronPDF prend en charge le travail avec des PDFs chiffrés. Il vous permet d'ouvrir, de décrypter et de manipuler des documents sécurisés, ce qui est essentiel pour travailler avec des documents nécessitant des mots de passe ou d'autres formes de protection.

  7. Compatibilité multiplateforme :

    IronPDF est compatible avec les environnements Windows et Linux, ce qui en fait un outil polyvalent pour les applications côté serveur. Le wrapper Node.js simplifie le processus d'intégration d'IronPDF dans les applications basées sur Node.js.

Étape 1 : Configurer une application Node.js

Pour commencer, configurez le dossier de projet Node.js en créant un dossier sur la machine locale et en ouvrant Visual Studio Code.

mkdir PdfImageExtractor
cd PdfImageExtractor
code .
mkdir PdfImageExtractor
cd PdfImageExtractor
code .
SHELL

Étape 2 : Installez les packages NPM IronPDF

Installez le package IronPDF pour Node.js et son package de support sur des machines Windows ou Linux.

npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf-engine-windows-x64
npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf-engine-windows-x64
SHELL

Le package @ironsoftware/ironpdf-engine-windows-x64 est une version spécifique à la plateforme de la bibliothèque IronPDF, spécialement conçue pour les systèmes Windows 64 bits.

Binaire spécifique à la plateforme pour Windows (64 bits)

La bibliothèque IronPDF a des dépendances spécifiques à la plateforme. Pour que Node.js fonctionne efficacement avec IronPDF, il nécessite des binaires natifs adaptés à des systèmes d'exploitation et architectures spécifiques. Dans ce cas, le package @ironsoftware/ironpdf-engine-windows-x64 fournit le moteur natif pour les environnements Windows 64 bits.

2. Performance Optimisée

En utilisant ce package spécifique à Windows, vous garantissez que la bibliothèque IronPDF fonctionne de manière optimale sur les systèmes basés sur Windows. Il garantit que toutes les dépendances natives, telles que celles liées au rendu et à la manipulation de PDF, sont compatibles et fonctionnent parfaitement sur votre machine.

3. Simplifier l'installation

Au lieu de gérer et configurer manuellement les binaires requis pour les systèmes Windows 64 bits, l'installation du package @ironsoftware/ironpdf-engine-windows-x64 automatise ce processus. Cela permet de gagner du temps et élimine les problèmes de compatibilité potentiels.

4. Compatibilité multiplateforme

IronPDF prend également en charge d'autres plateformes comme macOS et Linux. En fournissant des packages spécifiques à la plateforme, les développeurs peuvent utiliser le bon binaire pour leur système d'exploitation, améliorant ainsi la stabilité et la fiabilité globales de la bibliothèque.

5. Nécessaire pour certaines fonctionnalités

Si vous utilisez certaines fonctionnalités IronPDF (comme le rendu de PDF en images ou la réalisation de manipulations complexes de documents), le moteur natif est requis. Le package @ironsoftware/ironpdf-engine-windows-x64 inclut ce moteur spécifiquement pour les environnements basés sur Windows.

Étape 3 : Préparer un PDF pour l'extraction

Obtenez maintenant le fichier PDF qui doit être extrait. Copiez le chemin à utiliser dans l'application. Cet article utilise le fichier suivant.

Comment extraire des images d'un PDF en Node.js : Figure 1 - Fichier d'exemple

Étape 4 : Extraire les images du fichier PDF et enregistrer

Utilisez maintenant le fichier de l'étape ci-dessus et écrivez le code suivant dans un fichier app.js dans le dossier du projet Node.js.

const fs = require('fs');
const { IronPdfGlobalConfig, PdfDocument } = require('@ironsoftware/ironpdf')
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Your license key";
 (async () => {
    // Extracting Image and Text content from Pdf Documents
    // Import existing PDF document
    const pdf = await PdfDocument.fromFile("ironPDF.pdf");
    // Get all text to put in a search index and log it
    const text = await pdf.extractText();
    console.log('All Text:'+text);
    // Get all Images
    const imagesBuffer = await pdf.extractRawImages();
    console.log('images count:'+imagesBuffer.length);
    fs.writeFileSync("./file1.jpg", imagesBuffer[0]);
   // this code can also be in rest api
})();
var msg = 'Complete!';
console.log(msg); //log complete in console
js
JAVASCRIPT

Exécutez l'application :

node app.js
node app.js
SHELL

Explication du code

Ce morceau de code illustre comment utiliser la bibliothèque IronPDF dans Node.js pour extraire du texte et des images (format JPG) d'un document PDF.

  1. Configuration de la licence : L'IronPdfGlobalConfig est utilisé pour définir la clé de licence pour IronPDF, ce qui est nécessaire pour utiliser les fonctionnalités de la bibliothèque.

  2. Chargement de PDF : Le code charge un document PDF (ironPDF.pdf) en utilisant la méthode PdfDocument.fromFile(). Cela permet au programme de travailler avec le contenu du PDF.

  3. Extraction de texte : La méthode extractText() est utilisée pour extraire tout le texte du PDF chargé. Ce texte peut être utilisé pour des tâches telles que l'indexation ou la recherche dans le document.

  4. Extraction d'images : La méthode extractRawImages() est utilisée pour extraire des images brutes du PDF. Ces images sont renvoyées sous forme de tampon, qui peut être sauvegardé ou traité davantage.

  5. Enregistrement des images : Les images extraites sont enregistrées dans le système de fichiers local sous forme de fichiers JPG en utilisant la méthode fs.writeFileSync() de Node.

  6. Sortie finale : Une fois l'extraction terminée, le programme affiche le texte extrait et le nombre d'images extraites, suivi de l'enregistrement de la première image.

    Le code démontre comment interagir avec des fichiers PDF en utilisant IronPDF pour extraire le contenu et le traiter dans un environnement Node.js.

Sortie

Comment extraire des images d'un PDF en Node.js : Figure 2 - Sortie de la console

Comment extraire des images d'un PDF en Node.js : Figure 3 - Résultat de l'image

Licence (version d'essai disponible)

IronPDF Node.js nécessite une clé de licence pour fonctionner. Les développeurs peuvent obtenir une licence d'essai en utilisant leur adresse e-mail depuis la page de licence. Une fois que vous fournissez l'identifiant e-mail, la clé sera envoyée à cet e-mail et pourra être utilisée dans l'application comme suit.

const { IronPdfGlobalConfig} = require('@ironsoftware/ironpdf')
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Your license key";
js
JAVASCRIPT

Conclusion

L'utilisation d'IronPDF en Node.js pour extraire des images de fichiers PDF offre une méthode robuste et efficace pour gérer le contenu PDF. Bien qu'IronPDF n'offre pas d'extraction d'images directe comme certains outils spécialisés, il vous permet de rendre les pages PDF en tant qu'images, ce qui est utile pour créer des représentations visuelles du document.

La capacité de la bibliothèque à extraire à la fois du texte et des images des fichiers PDF de manière simple en fait un outil précieux pour les applications qui doivent traiter et manipuler le contenu PDF. Son intégration avec Node.js permet aux développeurs d'incorporer facilement l'extraction de PDF dans des applications web ou côté serveur.

Globalement, IronPDF est une solution puissante pour la manipulation de PDF, offrant la flexibilité de convertir, enregistrer et extraire des images à partir de PDF, ce qui le rend adapté à un large éventail de cas d'utilisation tels que l'indexation de documents, la génération d'aperçus, et l'extraction de contenu. Cependant, si votre objectif est uniquement d'extraire des images intégrées à partir de fichiers PDF, l'exploration de bibliothèques supplémentaires pourrait offrir des solutions plus spécialisées.

Darrius Serrant
Ingénieur Logiciel Full Stack (WebOps)

Darrius Serrant est titulaire d'une licence en informatique de l'Université de Miami et travaille en tant qu'ingénieur marketing Full Stack WebOps chez Iron Software. Attiré par le code depuis son plus jeune âge, il a vu l'informatique comme à la fois mystérieuse et accessible, en faisant le support parfait pour la créativité et la résolution de problèmes.

Chez Iron Software, Darrius apprécie de créer de nouvelles choses et de simplifier des concepts complexes pour les rendre plus compréhensibles. En tant que l'un de nos développeurs résidents, il a également fait du bénévolat pour enseigner aux étudiants, partageant son expertise avec la prochaine génération.

Pour Darrius, son travail est épanouissant car il est apprécié et a un réel impact.

SUIVANT >
Comment éditer un fichier PDF en Node.js