Extrahieren Sie Bilder aus PDF Dateien mit Node.js

PDF Dokumente bewahren den Inhalt, einschließlich Bilder und Text, so wie er ist. In bestimmten Fällen müssen wir möglicherweise Bilder aus PDF-Acrobat Dateien extrahieren, um sie wiederzuverwenden. Wir können alle Bilder oder Bilder von bestimmten Seiten, die in den PDF Dokumenten eingebettet sind, ganz einfach programmgesteuert in der Cloud extrahieren. In diesem Artikel erfahren Sie, wie Sie mithilfe einer REST-API in Node.js Bilder aus PDF Dateien extrahieren.

Die folgenden Themen werden in diesem Artikel zum Extrahieren von Fotos aus PDF behandelt:

Image Extractor REST API und Node.js SDK

Zum Extrahieren von Bildern aus PDF Dokumenten verwenden wir die API Node.js SDK der GroupDocs.Parser Cloud. Es ermöglicht das Extrahieren von Text, Bildern und das Parsen von Daten durch eine Vorlage aus allen gängigen Dokumentformaten. Bitte installieren Sie es mit dem folgenden Befehl in der Konsole:

npm install groupdocs-parser-cloud

Bitte holen Sie sich Ihre Kunden-ID und Ihr Geheimnis aus dem Dashboard, bevor Sie die genannten Schritte ausführen. Sobald Sie Ihre ID und Ihr Geheimnis haben, fügen Sie den Code wie unten gezeigt ein:

// Dieses Codebeispiel zeigt, wie Sie Ihre Client-ID und Ihr Geheimnis in den Code einfügen.
global.clientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
global.clientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
global.myStorage = "";

const configuration = new groupdocs_parser_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

Extrahieren Sie Bilder aus PDF mithilfe einer REST-API in Node.js

Wir können Bilder aus PDF Dokumenten extrahieren, indem wir die folgenden einfachen Schritte befolgen:

Laden Sie das Dokument hoch

Zunächst laden wir das PDF Dokument mit den Bildern mithilfe des unten angegebenen Codebeispiels in die Cloud hoch:

// Dieses Codebeispiel zeigt, wie Sie in node.js eine PDF-Datei in die Cloud hochladen 
// Konstruieren Sie FileApi
let fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);

// Pfad der Eingabedatei
let resourcesFolder = 'C:\\Files\\Parser\\sample.pdf';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // Anfrage zum Hochladen einer Datei
  let request = new groupdocs_parser_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // Datei hochladen
  fileApi.uploadFile(request);
});

Dadurch ist die hochgeladene PDF-Datei im Dateienbereich des Dashboards in der Cloud verfügbar. Diese Datei ist verfügbar, um ein Bild aus einem PDF zu extrahieren.

Extrahieren Sie alle Bilder aus einer PDF-Datei in Node.js

Jetzt extrahieren wir alle Bilder programmgesteuert aus der hochgeladenen PDF-Datei, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz von ParseApi.
  • Geben Sie als Nächstes den Pfad der hochgeladenen PDF-Datei an.
  • Definieren Sie dann ImageOptions und weisen Sie die Datei zu.
  • Erstellen Sie anschließend die ImagesRequest mit ImageOptions als Argument.
  • Extrahieren Sie abschließend Bilder, indem Sie die Methode images() aufrufen.

Das folgende Codebeispiel zeigt, wie alle Bilder mithilfe einer REST-API in Node.js aus einer PDF-Datei extrahiert werden.

// Dieses Codebeispiel zeigt, wie alle Bilder aus einer PDF-Datei in Node.js extrahiert werden.
//API-Initialisierung
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Pfad der Eingabedatei
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Bildoptionen definieren
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;

// Bildanfrage
let request = new groupdocs_parser_cloud.ImagesRequest(options);

// Bilder extrahieren
let result = await parseApi.images(request);

// Zeige Ergebnisse
let images = result.images;
images.forEach(image => {
  console.log("Image path in storage: " + image.path);
  console.log("Download url: " + image.downloadUrl);
  console.log("Image format: " + image.fileFormat + ". Page index: " + image.pageIndex);
});
Extrahieren Sie Bilder aus PDF mithilfe einer REST-API in Node.js

Extrahieren Sie Bilder aus PDF mithilfe einer REST-API in Node.js

Laden Sie extrahierte Bilder herunter

Das obige Codebeispiel speichert die extrahierten Bilder in der Cloud. Wir können diese Bilder mithilfe des unten angegebenen Codebeispiels herunterladen:

// Dieses Codebeispiel zeigt, wie man mit Node.js Bilder aus der Cloud herunterlädt
// Erstellen Sie die erforderlichen API-Instanzen
var folderApi = groupdocs_parser_cloud.FolderApi.fromConfig(configuration);
var fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);

// Anfrage zum Abrufen einer Dateiliste
var filesListRequest = new groupdocs_parser_cloud.GetFilesListRequest("parser/images/sample_pdf/", myStorage);

// Dateiliste abrufen
var filesList = await folderApi.getFilesList(filesListRequest);

for (var count = 0; count < filesList.value.length; count++) {
  // Dateianforderung herunterladen
  let request = new groupdocs_parser_cloud.DownloadFileRequest(filesList.value[count].path, myStorage);

  // Download-Datei
  let response = await fileApi.downloadFile(request);

  // Speichern Sie die Datei im Ordner auf der Festplatte
  fs.writeFile("C:\\Files\\parser\\images\\" + filesList.value[count].name, response, "binary", function (err) { });
  console.log(response);
}

So exportieren Sie ein Bild aus einer PDF-Datei und laden es dann aus der Cloud herunter.

Speichern Sie Bilder nach Seitenzahlen aus PDF Dokumenten in Node.js

Wir können Bilder von PDF-spezifischen Seiten anstelle des gesamten Dokuments exportieren, indem wir die unten aufgeführten Schritte ausführen.

  • Erstellen Sie zunächst eine Instanz von ParseApi.
  • Geben Sie als Nächstes den Pfad der hochgeladenen PDF-Datei an.
  • Definieren Sie dann ImageOptions und weisen Sie die Datei zu.
  • Legen Sie die Nummer der Startseite und die Gesamtzahl der Seiten fest, von denen Bilder extrahiert werden sollen.
  • Erstellen Sie anschließend die ImagesRequest mit ImageOptions als Argument.
  • Extrahieren Sie abschließend Bilder, indem Sie die Methode images() aufrufen.

Das folgende Codebeispiel zeigt, wie man mithilfe einer REST-API in Node.js Bilder aus einer PDF-Datei nach Seitenzahlen aus einem PDF Dokument extrahiert. Bitte befolgen Sie die zuvor genannten Schritte, um die extrahierten Bilder herunterzuladen.

// Dieses Codebeispiel zeigt, wie man Bilder aus bestimmten Seiten einer PDF-Datei in Node.js extrahiert.
//API-Initialisierung
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Pfad der Eingabedatei
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Bildoptionen definieren
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;
options.startPageNumber = 1;      // Start page number
options.countPagesToExtract = 1;  // Total pages

// Bildanfrage
let request = new groupdocs_parser_cloud.ImagesRequest(options);

// Bilder extrahieren
let result = await parseApi.images(request);

// Zeige Ergebnisse
let pages = result.pages;
pages.forEach(page => {
  console.log("Page index: " + page.pageIndex);
  page.images.forEach(image => {
    console.log("Download url: " + image.downloadUrl);
    console.log("Image format: " + image.fileFormat + ". Page index: " + image.pageIndex);
  });
});

Extrahieren Sie Bilder aus einem mit PDF angehängten Dokument in Node.js

Wir können auch Bilder aus einem Dokument in einem Container extrahieren, die als Anhang in einer PDF-Datei verfügbar sind, indem wir die unten aufgeführten Schritte ausführen.

  • Erstellen Sie zunächst eine Instanz von ParseApi.
  • Geben Sie als Nächstes den Pfad der hochgeladenen PDF-Datei an.
  • Definieren Sie dann ImageOptions und weisen Sie die Datei zu.
  • Als nächstes definieren Sie ContainerItemInfo und geben den relativen Pfad des inneren Dokuments an.
  • Erstellen Sie anschließend die ImagesRequest mit ImageOptions als Argument.
  • Extrahieren Sie abschließend Bilder, indem Sie die Methode images() aufrufen.

Das folgende Codebeispiel zeigt, wie Sie mithilfe einer REST-API in Node.js die Bilder aus einem Dokument in einem PDF Dokument extrahieren. Bitte befolgen Sie die zuvor genannten Schritte, um die extrahierten Bilder herunterzuladen.

// Dieses Codebeispiel zeigt, wie man Bilder aus einem Dokument extrahiert, das in einer PDF-Datei in Node.js angehängt ist.
// API-Initialisierung
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Pfad der Eingabedatei
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "PDF_with_Attachment.pdf";
fileInfo.password = "password";

// Bildoptionen definieren
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;

// Containerartikel
options.ContainerItemInfo = new groupdocs_parser_cloud.ContainerItemInfo();
options.ContainerItemInfo.relativePath = "template-document.pdf";

// Bildanfrage
let request = new groupdocs_parser_cloud.ImagesRequest(options);

// Bilder extrahieren
let result = await parseApi.images(request);

// Zeige Ergebnisse
let images = result.images;
images.forEach(image => {
  console.log("Image path: " + image.path);
  console.log("Image format: " + image.fileFormat + ". Page index: " + image.pageIndex);
});

Versuchen Sie es online

Wie extrahiere ich Bilder kostenlos aus PDF? Bitte probieren Sie das folgende kostenlose Online-PDF-Parsing-Tool aus, um PDF bilder online zu extrahieren, das mit der oben genannten API entwickelt wurde. https://products.groupdocs.app/parser/pdf

Abschluss

In diesem Artikel haben wir gelernt, wie man:

  • Extrahieren Sie Bilder aus PDF Dateien mit Node.js in der Cloud.
  • Laden Sie eine PDF-Datei programmgesteuert in die Cloud hoch.
  • Laden Sie die extrahierten Bilder aus der Cloud herunter.

Außerdem können Sie mithilfe der Dokumentation mehr über die GroupDocs.Parser Cloud API erfahren. Wir bieten auch einen Abschnitt API-Referenz an, mit dem Sie unsere APIs direkt über den Browser visualisieren und mit ihnen interagieren können. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch