Comment convertir un PDF en fichier image dans Node.js
IronPDF for Node.js convertit les pages PDF en images avec un seul appel de méthode. La méthode rasterizeToImageFiles génère des fichiers PNG, JPG, GIF, BMP et d'autres formats à partir de n'importe quel PDF (à une ou plusieurs pages), avec un contrôle direct sur la résolution de sortie et la sélection des pages.
La méthode détecte automatiquement le format de sortie à partir de l'extension de fichier que vous fournissez, donc passer d'un format à l'autre ne nécessite aucune modification de configuration. Dans les environnements où l'extension ne peut pas être modifiée, une valeur explicite de l'énumération ImageType remplace la détection basée sur l'extension. La documentation IronPDF for Node.js couvre toute la gamme des sources d'entrée prises en charge, y compris les chemins de fichiers, les buffers octets, et les chaînes HTML converties en PDF avant rasterisation.
Démarrage rapide : Convertir PDF en PNG
- Installer IronPDF :
npm install @ironsoftware/ironpdf - Importez
PdfDocumentdepuis le package - Chargez votre PDF avec
PdfDocument.fromFile() - Appeler
rasterizeToImageFiles()avec le chemin de sortie
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/quickstart.js
import { PdfDocument } from "@ironsoftware/ironpdf";
PdfDocument.fromFile("./sample.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./output.png");
});
Flux de travail minimal (5 étapes)
1. Installez IronPDF for Node.js via npm 2. Importez la classe `PdfDocument` 3. Charger un fichier PDF à l'aide de `PdfDocument.fromFile()` 4. Appelez `rasterizeToImageFiles()` avec le chemin de sortie et l'extension souhaités 5. Pour les PDF multi-pages, la méthode ajoute automatiquement des numéros de page à chaque nom de fichier de sortieComment installer IronPDF for Node.js?
npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf
Installez le package Node.js de IronPDF depuis npm pour convertir des PDF en PNG, JPG, GIF, BMP et autres formats d'image.
Avant de convertir des PDF en images en production, configurez votre clé de licence. Le package nécessite également que le moteur IronPDF soit installé sur votre système – ce binaire gère toutes les opérations de rendu des PDF et doit être présent pour que la conversion fonctionne.
Quelle est la configuration requise?
Node.js 12 ou ultérieur est requis. Le binaire du moteur IronPDF est téléchargé automatiquement la première fois que le package se charge, mais vous pouvez également l'installer manuellement si votre environnement de déploiement restreint l'accès réseau sortant. Le package @ironsoftware/ironpdf est disponible sur le registre npm et ne nécessite aucune étape de compilation de module natif, ce qui simplifie les pipelines d'intégration continue (CI).
Comment convertir un PDF en image?
La méthode rasterizeToImageFiles lit un document PDF et écrit un fichier image par page dans le chemin de sortie que vous indiquez. Pour les PDF d'une seule page, elle produit exactement une image. Pour les PDFs multi-pages, il ajoute automatiquement un suffixe de numéro de page à chaque nom de fichier.
L'exemple ci-dessous charge un PDF d'exemple de Learning Container et le convertit en fichier PNG.
Le fichier PDF d'exemple ouvert dans une visionneuse. Téléchargez ce fichier et d'autres PDFs de test depuis Learning Container.
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-png.js
import { PdfDocument } from "@ironsoftware/ironpdf";
// Load the PDF and convert it to a PNG image.
// The output path determines the format — change .png to .jpg for JPEG output.
PdfDocument.fromFile("./sample-pdf-file.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/sample-pdf-file.png");
return pdf;
}).catch((error) => {
console.error("Error converting PDF to image:", error);
});
PdfDocument.fromFile charge le PDF et renvoie une Promise se résolvant en un objet PdfDocument. La fonction de rappel .then reçoit le document résolu et appelle rasterizeToImageFiles avec le chemin de destination. L'extension de fichier dans le chemin d'accès — .png ici — indique à IronPDF quel format produire. Le bloc .catch gère toutes les erreurs de lecture ou de conversion.
Le PNG généré à partir du PDF d'exemple ci-dessus. IronPDF convertit le document en trois lignes de code.
Pour des exemples plus détaillés des options de cette méthode, consultez la page d'exemples de code PDF en Images.
Comment convertir un PDF au format JPEG ?
La sélection du format est automatique : l'extension que vous transmettez à rasterizeToImageFiles détermine le format de sortie. Pour produire un JPEG à la place d'un PNG, changez l'extension dans le chemin de destination :
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-jpeg-extension.js
// Switch to JPEG by changing the file extension in the output path.
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");
Lorsque le nom du fichier de sortie ne peut pas être contrôlé — par exemple, dans des pipelines automatisés avec des schémas de nommage fixes —, passez une valeur ImageType dans l'objet options pour remplacer la détection basée sur l'extension :
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-jpeg-imagetype.js
import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";
// ImageType.JPG forces JPEG output regardless of the file extension.
const options = {
type: ImageType.JPG,
dpi: 300
};
PdfDocument.fromFile("./sample-pdf-file.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/output.png", options);
return pdf;
});
La propriété type de l'objet options a priorité sur l'extension du nom de fichier. Dans l'exemple ci-dessus, rasterizeToImageFiles génère un fichier JPEG même si le chemin de destination se termine par .png. Le même modèle s'applique aux sorties GIF et BMP.
Comment les paramètres DPI affectent-ils la qualité de sortie ?
La propriété dpi de l'objet options contrôle la densité en pixels de la sortie tramée. Des valeurs plus élevées produisent des fichiers plus grands avec plus de détails ; des valeurs inférieures réduisent la taille du fichier aux dépens de la netteté.
dpi: 300 produit des images de qualité d'impression adaptées à l'impression haute résolution ou à l'archivage. Pour l'affichage à l'écran ou la génération de vignettes, dpi: 96 réduit la taille du fichier tout en conservant une clarté suffisante pour une utilisation sur le Web.Un DPI de 150 est un défaut raisonnable pour la plupart des scénarios d'archivage ou d'aperçu — la sortie est suffisamment nette pour la lecture à l'écran et les tailles de fichiers restent gérables. Pour le contenu qui sera imprimé ou soumis à un traitement OCR après conversion, un DPI de 300 ou plus est préférable.
Comment convertir un PDF multi-pages en images ?
Pour les documents de plus d'une page, rasterizeToImageFiles crée une image par page. IronPDF ajoute un indice de page basé sur zéro à chaque nom de fichier de sortie, gardant la sortie organisée sans code supplémentaire de votre part.
Un PDF d'exemple de deux pages. IronPDF crée un fichier image par page lors de la conversion.
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-multipage.js
import { PdfDocument } from "@ironsoftware/ironpdf";
// Each page of the PDF becomes a separate image file.
// Output filenames: multipage-pdf-page_1.png, multipage-pdf-page_2.png, etc.
PdfDocument.fromFile("./multipage-pdf.pdf").then((pdf) => {
pdf.rasterizeToImageFiles("./images/multipage-pdf/multipage-pdf-page.png");
});
Les deux fichiers PNG produits à partir du PDF de deux pages. IronPDF nomme chaque fichier de sortie avec son numéro de page.
Ce comportement de séparation automatique des pages fonctionne avec tous les formats d'image pris en charge. Associez-la à l'option fromPages de la section suivante pour convertir uniquement des pages spécifiques de documents volumineux. Pour travailler dans la direction opposée, l'exemple image vers PDF montre comment combiner plusieurs fichiers image en un seul document PDF.
Comment sont structurés les noms de fichiers de sortie ?
Le modèle de nom de fichier utilise un numéro de page basé sur un, ajouté avant l'extension de fichier. Si le chemin de sortie est ./images/report-page.png, un PDF de trois pages génère report-page_1.png, report-page_2.png et report-page_3.png. Le répertoire de sortie doit exister avant d'appeler rasterizeToImageFiles — la méthode ne crée pas automatiquement les répertoires manquants.
rasterizeToImageFiles. La méthode renvoie une erreur si le répertoire cible n'existe pas. Utilisez fs.mkdirSync('./images/output', { recursive: true }) de Node.js pour le créer à l'avance.Comment puis-je convertir uniquement des pages spécifiques ?
La propriété fromPages de l'objet options accepte un tableau d'index de pages à partir de zéro. Seules les pages spécifiées sont rasterisées ; toutes les autres sont ignorées. C'est utile lorsque vous travaillez avec de grands PDFs où seul un sous-ensemble de pages est nécessaire — par exemple, extraire la page de couverture et les pages de début de section pour un aperçu du document. Lorsque vous devez travailler sur des pages individuelles avant de les convertir, la référence de l'API Node.js pour PdfDocument documente des opérations supplémentaires au niveau de la page.
//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-selective-pages.js
import { PdfDocument, ImageType } from "@ironsoftware/ironpdf";
// Convert only pages 1, 4, 6, and 9 (zero-indexed: 0, 3, 5, 8) to BMP.
const options = {
type: ImageType.BMP,
fromPages: [0, 3, 5, 8],
dpi: 150
};
PdfDocument.fromFile("./sample-pdf-with-images.pdf").then((pdf) => {
pdf.rasterizeToImageFiles(
"./images/multipage-selective-pdf/multipage-pdf-page.bmp",
options
);
}).catch((error) => {
console.error("Failed to convert pages:", error);
});
IronPDF n'a rasterisé que les quatre pages spécifiées dans le tableau fromPages. Les autres pages n'ont pas été traitées.
Les index de page dans fromPages sont numérotés à partir de zéro, donc [0, 3, 5, 8] correspond aux première, quatrième, sixième et neuvième pages. La valeur DPI de 150 équilibre la qualité de sortie par rapport à la taille du fichier — adaptée pour des cas d'archivage ou d'aperçu. La conversion sélective est compatible avec tous les types d'images pris en charge.
Quelle est la différence entre des numéros de page basés sur zéro et sur un ?
fromPages utilise un indexage à partir de zéro, conformément à la convention standard des tableaux en JavaScript. La page 1 du document correspond à l'index 0, la page 2 à l'index 1, et ainsi de suite. Cela diffère des numéros de page basés sur un qui apparaissent dans les visionneuses de PDF. Lors de la traduction des numéros de page de la vue en index fromPages, soustrayez un de chaque numéro de page.
pdf.pageCount() de l'API PdfDocument et utilisez [pdf.pageCount() - 1] comme valeur fromPages.Quelles sont les prochaines étapes pour la conversion PDF en image ?
La méthode rasterizeToImageFiles d'IronPDF gère la sélection du format, le fractionnement en plusieurs pages et la conversion sélective de pages au sein d'une API cohérente. L'objet options est le seul point d'extension pour les changements de format, le contrôle DPI, et le filtrage des pages.
Pour aller plus loin, la documentation de référence de l'API IronPDF for Node.js répertorie tous les paramètres disponibles sur rasterizeToImageFiles et la classe PdfDocument. L'exemple de code PDF vers images montre l'utilisation de rasterizeToImageFiles avec une configuration supplémentaire. Pour travailler dans le sens inverse, voir la conversion d'images en fichiers PDF ou la conversion de fichiers TIFF multi-images en PDF.
Commencez votre essai gratuit de IronPDF for Node.js pour tester la conversion PDF en image dans votre propre projet. Voir les options de licence pour trouver le plan qui convient à votre équipe.
Prêt à voir ce qu'IronPDF peut faire d'autre ? Consultez le tutoriel complet Node.js ici : HTML to PDF in Node.js
Questions Fréquemment Posées
Comment convertir un PDF en image dans Node.js ?
Utilisez la méthode rasterizeToImageFiles d'IronPDF. Installez le package avec npm install @ironsoftware/ironpdf, chargez votre PDF en utilisant PdfDocument.fromFile(), puis appelez rasterizeToImageFiles() avec le chemin de sortie. L'extension de fichier détermine automatiquement le format de sortie.
Quels formats d'image sont pris en charge par rasterizeToImageFiles ?
IronPDF prend en charge la sortie PNG, JPG, GIF et BMP. Le format est détecté à partir de l'extension de fichier dans le chemin de sortie. Pour remplacer cela, passez une valeur d'enum ImageType dans l'objet options : par exemple, { type: ImageType.JPG } force la sortie en JPEG indépendamment de l'extension du nom de fichier.
Comment convertir uniquement des pages spécifiques d'un PDF en images ?
Passez un tableau fromPages dans l'objet options. Le tableau accepte des indices de page basés sur zéro, donc fromPages: [0, 2, 4] convertit la première, la troisième et la cinquième page. Les pages non listées dans le tableau sont ignorées.
Quel DPI dois-je utiliser pour la conversion de PDF en image ?
Définissez la propriété dpi dans l'objet options. Utilisez dpi: 96 pour l'affichage à l'écran et les vignettes, dpi: 150 pour les cas d'utilisation d'archivage et de prévisualisation, et dpi: 300 pour une sortie de qualité impression ou du contenu qui sera traité par OCR après conversion.
Quelles sont les exigences d'installation pour IronPDF dans Node.js ?
Node.js 12 ou version ultérieure est requis. Installez le package avec npm install @ironsoftware/ironpdf. Le binaire IronPDF Engine se télécharge automatiquement lors de la première utilisation et gère tout le rendu PDF. Pour une utilisation en production, configurez une clé de licence pour supprimer les filigranes de la sortie.
Comment sont structurés les noms de fichiers de sortie pour les PDF multi-pages ?
IronPDF ajoute un numéro de page basé sur un à la fin de l'extension de fichier. Si le chemin de sortie est report-page.png, un PDF de trois pages produira report-page_1.png, report-page_2.png, et report-page_3.png. Le répertoire de sortie doit exister avant d'appeler la méthode.
La conversion de PDF en image est-elle asynchrone dans Node.js ?
Oui. Les méthodes PdfDocument.fromFile() et rasterizeToImageFiles() renvoient des Promises. Enchaînez .then() pour le chemin du succès et .catch() pour gérer les erreurs de conversion. Vous pouvez également utiliser la syntaxe async/await avec ces méthodes.

