PDF-Dateien werden immer verwendet, um viele großartige Informationsinhalte zu enthalten. Um diese Informationen besser nutzen zu können, müssen Sie einige Tools verwenden, um Text- und Bildinformationen aus dem PDF zu extrahieren. Im Folgenden finden Sie einige Texte und Fotos, die PDFs über Java extrahieren.
Die Testquellendokumentation lautet wie folgt:
** Schritt 1: ** Fügen Sie einen Namespace hinzu;
import com.spire.pdf.*;
import java.io.FileWriter;
** Schritt 2: ** Erstellen Sie eine PDF-Instanz und laden Sie die PDF-Quelldatei.
//Create the PDF
PdfDocument doc = new PdfDocument();
//Load the PDF file
doc.loadFromFile("data/Sample.pdf");
** Schritt 3: ** Definieren Sie ein Beispiel für einen Zeichenpuffer, der das gesamte PDF-Dokument mit der StringBuider-Methode durchläuft.
// 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());
}
** Schritt 4: ** Definieren Sie eine Writer-Instanz, um Daten in den Pufferbereich zu schreiben, und verwenden Sie write (), um die Pufferbereichsdaten zu schreiben und in einer text.txt-Datei zu speichern.
//save text
String fileName = "output/text.txt";
FileWriter writer = new FileWriter(fileName);
writer.write(buffer.toString());
writer.flush();
writer.close();
Ergebnis der Textextraktion:
** Schritt 1: ** Fügen Sie einen Namespace hinzu;
import com.spire.pdf.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
** Schritt 2: ** Erstellen Sie eine PDF-Instanz und laden Sie die PDF-Quelldatei.
//Create the PDF
PdfDocument pdf = new PdfDocument();
//Load the PDF file
pdf.loadFromFile("data/Sample.pdf");
** Schritt 3: ** Die for-Schleife durchläuft jede Seite der PDF-Datei, verwendet die extractImages () -Methode, um das Bild der angegebenen Seite abzurufen, und speichert das Bild schließlich im PNG-Format.
// 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);
}
}
Bildextraktionsergebnis:
Recommended Posts