Estrai immagini da file PDF utilizzando Node.js

I documenti PDF conservano il contenuto, comprese le immagini e il testo così com’è. In alcuni casi, potrebbe essere necessario estrarre le immagini dai file Acrobat PDF per riutilizzarle. Possiamo facilmente estrarre tutte le immagini o le immagini da pagine specifiche incorporate nei documenti PDF in modo programmatico sul cloud. In questo articolo impareremo come estrarre immagini da file PDF utilizzando un’API REST in Node.js.

I seguenti argomenti devono essere trattati per estrarre le foto dal pdf in questo articolo:

API REST dell’estrattore di immagini e SDK Node.js

Per estrarre immagini da documenti PDF, utilizzeremo l’API Node.js SDK of GroupDocs.Parser Cloud. Consente l’estrazione di testo, immagini e l’analisi dei dati da parte di un modello da tutti i formati di documenti più diffusi. Si prega di installarlo utilizzando il seguente comando nella console:

npm install groupdocs-parser-cloud

Si prega di ottenere l’ID cliente e il segreto dalla dashboard prima di seguire i passaggi menzionati. Una volta che hai il tuo ID e segreto, aggiungi il codice come mostrato di seguito:

// Questo esempio di codice mostra come aggiungere l'ID cliente e il segreto nel codice.
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";

Estrai immagini da PDF utilizzando un’API REST in Node.js

Possiamo estrarre immagini da documenti PDF seguendo i semplici passaggi indicati di seguito:

Carica il documento

Innanzitutto, caricheremo il documento PDF contenente le immagini nel cloud utilizzando l’esempio di codice fornito di seguito:

// Questo esempio di codice mostra come caricare un PDF nel cloud in node.js 
// Costruisci FileApi
let fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);

// Percorso del file di input
let resourcesFolder = 'C:\\Files\\Parser\\sample.pdf';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // Richiesta di caricamento del file
  let request = new groupdocs_parser_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // Caricare un file
  fileApi.uploadFile(request);
});

Di conseguenza, il file PDF caricato sarà disponibile nella sezione file della dashboard sul cloud. Questo file è disponibile per estrarre un’immagine da un pdf.

Estrai tutte le immagini dal file PDF in Node.js

Ora, estrarremo tutte le immagini dal file PDF caricato in modo programmatico seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ParseApi.
  • Successivamente, fornisci il percorso del file PDF caricato.
  • Quindi, definisci ImageOptions e assegna il file.
  • Successivamente, crea ImagesRequest con ImageOptions come argomento.
  • Infine, estrai le immagini chiamando il metodo images().

Il seguente esempio di codice mostra come estrarre tutte le immagini da un file PDF utilizzando un’API REST in Node.js.

// Questo esempio di codice mostra come estrarre tutte le immagini da un PDF in Node.js.
//Inizializzazione dell'API
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Percorso del file di input
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// definire le opzioni dell'immagine
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;

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

// Estrai immagini
let result = await parseApi.images(request);

// Mostra i risultati
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);
});
Estrai immagini da PDF utilizzando un'API REST in Node.js

Estrai immagini da PDF utilizzando un’API REST in Node.js

Scarica le immagini estratte

L’esempio di codice precedente salverà le immagini estratte sul cloud. Possiamo scaricare queste immagini utilizzando l’esempio di codice fornito di seguito:

// Questo esempio di codice mostra come scaricare immagini dal cloud utilizzando Node.js
// Costruisci le istanze API necessarie
var folderApi = groupdocs_parser_cloud.FolderApi.fromConfig(configuration);
var fileApi = groupdocs_parser_cloud.FileApi.fromConfig(configuration);

// Ottieni la richiesta dell'elenco dei file
var filesListRequest = new groupdocs_parser_cloud.GetFilesListRequest("parser/images/sample_pdf/", myStorage);

// Ottieni l'elenco dei file
var filesList = await folderApi.getFilesList(filesListRequest);

for (var count = 0; count < filesList.value.length; count++) {
  // Scarica la richiesta di file
  let request = new groupdocs_parser_cloud.DownloadFileRequest(filesList.value[count].path, myStorage);

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

  // Salva il file nella cartella su disco
  fs.writeFile("C:\\Files\\parser\\images\\" + filesList.value[count].name, response, "binary", function (err) { });
  console.log(response);
}

Ecco come esportare l’immagine dal file pdf e quindi scaricarla dal cloud.

Salva le immagini per numero di pagina dai documenti PDF in Node.js

Possiamo esportare l’immagine da pagine specifiche del PDF anziché dall’intero documento seguendo i passaggi indicati di seguito.

  • Innanzitutto, crea un’istanza di ParseApi.
  • Successivamente, fornisci il percorso del file PDF caricato.
  • Quindi, definisci ImageOptions e assegna il file.
  • Imposta il numero della pagina iniziale e il numero totale di pagine da cui estrarre le immagini.
  • Successivamente, crea ImagesRequest con ImageOptions come argomento.
  • Infine, estrai le immagini chiamando il metodo images().

L’esempio di codice seguente mostra come estrarre immagini da un file PDF in base ai numeri di pagina da un documento PDF utilizzando un’API REST in Node.js. Si prega di seguire i passaggi menzionati in precedenza per scaricare le immagini estratte.

// Questo esempio di codice mostra come estrarre immagini da pagine specifiche di un PDF in Node.js.
//Inizializzazione dell'API
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Percorso del file di input
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// Definire le opzioni dell'immagine
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;
options.startPageNumber = 1;      // Start page number
options.countPagesToExtract = 1;  // Total pages

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

// Estrai immagini
let result = await parseApi.images(request);

// Mostra i risultati
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);
  });
});

Estrai immagini da documenti allegati con PDF in Node.js

Possiamo anche estrarre immagini da un documento all’interno di un contenitore, disponibile come allegato in un file PDF, seguendo i passaggi indicati di seguito.

  • Innanzitutto, crea un’istanza di ParseApi.
  • Successivamente, fornisci il percorso del file PDF caricato.
  • Quindi, definisci ImageOptions e assegna il file.
  • Successivamente, definisci ContainerItemInfo e fornisci il percorso relativo del documento interno.
  • Successivamente, crea ImagesRequest con ImageOptions come argomento.
  • Infine, estrai le immagini chiamando il metodo images().

Il seguente esempio di codice mostra come estrarre le immagini da un documento all’interno di un documento PDF utilizzando un’API REST in Node.js. Si prega di seguire i passaggi menzionati in precedenza per scaricare le immagini estratte.

// Questo esempio di codice mostra come estrarre immagini da un documento allegato in un PDF in Node.js.
// Inizializzazione dell'API
let parseApi = groupdocs_parser_cloud.ParseApi.fromConfig(configuration);

// Percorso del file di input
let fileInfo = new groupdocs_parser_cloud.FileInfo();
fileInfo.filePath = "PDF_with_Attachment.pdf";
fileInfo.password = "password";

// Definire le opzioni dell'immagine
let options = new groupdocs_parser_cloud.ImagesOptions();
options.fileInfo = fileInfo;

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

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

// Estrai immagini
let result = await parseApi.images(request);

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

Prova in linea

Come estrarre immagini da pdf gratis? Prova il seguente strumento di analisi PDF online gratuito per estrarre immagini PDF online, sviluppato utilizzando l’API di cui sopra. https://products.groupdocs.app/parser/pdf

Conclusione

In questo articolo abbiamo imparato a:

  • estrarre immagini da file PDF utilizzando Node.js sul cloud;
  • caricare in modo programmatico un file PDF nel cloud;
  • scarica le immagini estratte dal cloud.

Inoltre, puoi saperne di più su GroupDocs.Parser Cloud API utilizzando la documentazione. Forniamo anche una sezione Riferimento API che ti consente di visualizzare e interagire con le nostre API direttamente attraverso il browser. In caso di ambiguità, non esitate a contattarci sul forum.

Guarda anche