Diese kurze Anleitung beschreibt den Prozess zur Extraktion von Daten aus einem PDF-Formular mit Java. Sie enthält die IDE-Einstellungen, eine Liste von Schritten zum Erstellen des Programms und Beispielcode, der zeigt, wie man Daten aus einem PDF-Formular mit Java exportiert. Es werden Details zur Verarbeitung aller oder ausgewählter Formularfelder bereitgestellt.
Schritte zur Extraktion von Daten aus PDF-Formularfeldern mit Java
- Konfigurieren Sie die IDE für die Nutzung von Aspose.PDF for Java zur Extraktion von Formulardaten.
- Erstellen Sie eine PDF-Datei mit Textfeldern und Beispieldaten.
- Laden Sie die PDF-Datei mit Formular- und Eingabefeldern in das Document-Objekt.
- Greifen Sie auf die Sammlung der Felder im Form-Objekt des geladenen Dokuments zu.
- Durchlaufen Sie alle Felder und geben Sie den vollständigen Namen und Wert in der Konsole aus.
Diese Schritte erklären, wie man Formularfelder aus einer PDF-Datei mit Java extrahiert. Sie können eine PDF-Datei mit Formularfeldern und Beispieldaten erstellen oder eine bestehende Datei mit Formulardaten laden. Nutzen Sie die Form-Eigenschaft des Dokuments, um die Feldsammlung zu erhalten, durchlaufen Sie alle Felder und zeigen Sie die gewünschten Eigenschaften an.
Code zur Extraktion von Daten aus einem ausfüllbaren PDF mit Java
import com.aspose.pdf.*; | |
public class Main { | |
public static void main(String[] args) throws Exception { | |
// Load Aspose PDF license | |
License license = new License(); | |
license.setLicense("license.lic"); | |
// Generate PDF with input fields | |
createPdfWithFields(); | |
// Open and process the generated PDF file | |
Document pdfDocument = new Document("UserForm.pdf"); | |
// Retrieve and display form fields | |
Field[] formFields = pdfDocument.getForm().getFields(); | |
for (Field formField : formFields) { | |
System.out.println("Field Name: " + formField.getFullName()); | |
System.out.println("Field Content: " + formField.getValue()); | |
} | |
// Release resources | |
pdfDocument.close(); | |
} | |
private static void createPdfWithFields() { | |
// Instantiate new PDF document | |
Document pdfFile = new Document(); | |
for (int pageIndex = 1; pageIndex <= 3; pageIndex++) { | |
Page newPage = pdfFile.getPages().add(); | |
for (int fieldIndex = 1; fieldIndex <= 4; fieldIndex++) { | |
// Define a text input field | |
TextBoxField inputField = new TextBoxField(newPage, | |
new Rectangle(120, fieldIndex * 90, 320, (fieldIndex + 1) * 90)); | |
inputField.setPartialName("inputField_" + pageIndex + "_" + fieldIndex); | |
inputField.setValue("Data Entry " + pageIndex + "-" + fieldIndex); | |
// Attach field to the document form | |
pdfFile.getForm().add(inputField, pageIndex); | |
} | |
} | |
// Save document to disk | |
pdfFile.save("UserForm.pdf"); | |
// Free resources | |
pdfFile.close(); | |
} | |
} |
Dieser Code zeigt, wie man Daten aus einem PDF-Formular mit Java extrahiert. Sie können auf verschiedene Eigenschaften des Formulars zugreifen, wie z. B. den alternativen Feldnamen, den Mapping-Namen, den Inhalt, den Teilnamen, den aktiven Zustand, den Namen des markierten Zustands, die Seitenindexe usw. Um nur bestimmte Felder abzurufen, nutzen Sie den Feldindex, z. B. formFields[1].getValue()
, um den Wert des ersten Feldes abzurufen.
In diesem Artikel haben wir Formulare in einer PDF-Datei verarbeitet. Für die Extraktion von Schriftarten aus einer PDF-Datei lesen Sie den Artikel Schriftarten aus PDF mit Java extrahieren.