Les fichiers PDF sont toujours utilisés pour transporter un grand nombre d'informations intéressantes. Pour mieux utiliser ces informations, vous devez utiliser certains outils pour extraire des informations de texte et d'image du PDF. Vous trouverez ci-dessous quelques textes et photos qui extraient des PDF via Java.
--Méthode 1: Après avoir téléchargé le stress de Free Spire.Pdf pour Java depuis le site officiel, ajoutez-le à Shift + Ctrl + Alt + S dans IDEA ou Eclipse. En ajoutant le paquet Spire.Pdf.jar au programme, le fichier jar Peut être obtenu dans le dossier lib sous le chemin de décompression. Le résultat de l'introduction du package jar est le suivant:
La documentation source du test est la suivante:
** Étape 1: ** Ajouter un espace de noms;
import com.spire.pdf.*;
import java.io.FileWriter;
** Étape 2: ** Créez une instance de PDF et chargez le fichier source PDF;
//Create the PDF
PdfDocument doc = new PdfDocument();
//Load the PDF file
doc.loadFromFile("data/Sample.pdf");
** Étape 3: ** Définissez un exemple de tampon de caractères qui traverse tout le document PDF en utilisant la méthode StringBuider;
// Traverse the PDF
StringBuilder buffer = new StringBuilder();
for(int i = 1; i<doc.getPages().getCount(); i++){
PdfPageBase page = doc.getPages().get(i);
buffer.append(page.extractText());
}
** Étape 4: ** Définissez une instance d'écriture pour écrire des données dans la zone tampon et utilisez write () pour écrire et enregistrer les données de la zone tampon dans un fichier text.txt.
//save text
String fileName = "output/text.txt";
FileWriter writer = new FileWriter(fileName);
writer.write(buffer.toString());
writer.flush();
writer.close();
Résultat de l'extraction de texte:
** Étape 1: ** Ajouter un espace de noms;
import com.spire.pdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
** Étape 2: ** Créez une instance de PDF et chargez le fichier source PDF;
//Create the PDF
PdfDocument pdf = new PdfDocument();
//Load the PDF file
pdf.loadFromFile("data/Sample.pdf");
** Étape 3: ** La boucle for parcourt chaque page du PDF, utilise la méthode extractImages () pour obtenir l'image de la page spécifiée, et enfin enregistre l'image au format PNG.
// Declare an int variable
int index = 0;
// loop through the pages
for (int i= 0;i< pdf.getPages().getCount(); i ++){
//Get the PDF pages
PdfPageBase page = pdf.getPages().get(i);
// Extract images from a particular page
for (BufferedImage image : page.extractImages()) {
//specify the file path and name
File output = new File("output/" + String.format("Image_%d.png ", index++));
//Save image as .png file
ImageIO.write(image, "PNG", output);
}
}
Résultat d'extraction d'image:
Recommended Posts