Il PDF, essendo uno dei formati di file più popolari, è utilizzato da quasi tutte le aziende e i settori. I documenti PDF possono contenere contenuti diversi tra cui testo formattato, immagini, annotazioni, ecc. Spesso è necessario estrarre il contenuto dai file PDF. Qui in questo articolo, discuteremo come estrarre a livello di codice le immagini dai documenti PDF in Java.
API Java per estrarre immagini da file PDF
GroupDocs fornisce GroupDocs.Parser per gli sviluppatori Java per l’estrazione di immagini da file PDF. Insieme al file PDF, la stessa API supporta l’analisi e l’estrazione di immagini da vari altri formati di documenti come documenti di elaborazione testi, fogli di calcolo, eBook, presentazioni, e-mail, archivi ZIP e molti altri formati di documenti .
Scarica o configura
Puoi scaricare il file JAR dalla sezione download o semplicemente ottenere il repository e le configurazioni delle dipendenze per pom.xml delle tue applicazioni Java basate su maven.
<repository>
<id>groupdocs-artifacts-repository</id>
<name>GroupDocs Artifacts Repository</name>
<url>https://releases.groupdocs.com/java/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>22.11</version>
</dependency>
Passaggi per estrarre immagini da un documento PDF in Java
Di seguito sono riportati i punti passo-passo che mostrano come ottenere immagini dal file PDF utilizzando poche righe di codice Java.
- Crea un nuovo progetto.
- Scarica l’API come menzionato sopra o esegui l’aggiornamento all’ultima versione dell’API.
- Importa le seguenti classi:
import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.PageImageArea;
- Carica il documento PDF utilizzando la classe Parser.
// Carica file PDF
try (Parser parser = new Parser("path/document.pdf")) {
// Il codice di estrazione dell'immagine va qui.
}
- Estrai tutte le immagini dal documento usando il metodo getImages.
// Estrai le immagini dal file caricato
Iterable<PageImageArea> images = parser.getImages();
- Accedi a ciascuna immagine dalla raccolta e salvala utilizzando il metodo di salvataggio.
// Salva il file con la loro estensione
for (PageImageArea image : images) {
image.save(String.format("path/image_%d" + image.getFileType().getExtension(), imageCounter++));
}
Le immagini possono essere salvate in diversi formati immagine come PNG, JPG, BMP, WebP o GIF.
Codice completo Java: estrazione di immagini da PDF
Ecco il codice sorgente completo che consente di ottenere tutte le immagini dal file PDF fornito.
// Estrai immagini da file PDF in Java
try (Parser parser = new Parser("path/document.pdf"))
{
// Ottieni immagini
Iterable<PageImageArea> images = parser.getImages();
// Controlla se l'estrazione delle immagini è supportata
if (images == null)
{
System.out.println("Images extraction isn't supported");
return;
}
int imageCounter = 0;
// Itera le immagini estratte
for (PageImageArea image : images)
{
image.save(String.format("path/image_%d" + image.getFileType().getExtension(), imageCounter++));
}
}
Risultati
Esempio di documento PDF
Immagini estratte
Se lo desideri, viene anche spiegato in un articolo separato come puoi Estrarre immagini da qualsiasi pagina specifica di un documento PDF in Java.
Leggi di più
Puoi esplorare di più sull’API Java per l’estrazione dei dati utilizzando la sua documentazione. Puoi condividere le tue domande con noi tramite il nostro forum.