Wyodrębnianie danych formularza PDF przy użyciu GroupDocs.Parser w Javie
W tym samouczku dowiesz się jak wyodrębnić dane formularza PDF z dokumentów PDF przy użyciu GroupDocs.Parser dla Javy. Niezależnie od tego, czy potrzebujesz odczytać pola formularza PDF, pobrać obrazy z PDF, czy zautomatyzować wprowadzanie danych PDF, poniższy przewodnik krok po kroku pokaże Ci dokładnie, jak zrobić to efektywnie i niezawodnie.
Szybkie odpowiedzi
- Jaką bibliotekę używać do wyodrębniania danych formularza PDF? GroupDocs.Parser for Java
- Czy mogę odczytać pola formularza PDF i obrazy? Yes – both text fields and embedded images are supported
- Czy potrzebuję licencji? A free trial works for evaluation; a commercial license is required for production
- Jaką wersję Javy wymaga się? Java 8 or later
- Czy przetwarzanie równoległe jest możliwe? Yes, you can parse multiple PDFs concurrently for high‑throughput scenarios
Co to jest wyodrębnianie danych formularza PDF?
Wyodrębnianie danych formularza PDF oznacza programowe odczytywanie wartości wprowadzonych do interaktywnych pól (pola tekstowe, pola wyboru, listy rozwijane itp.) w formularzu PDF. Pozwala to przenieść dane ze statycznych dokumentów do baz danych, systemów CRM lub dowolnych procesów downstream bez ręcznej transkrypcji.
Dlaczego warto używać GroupDocs.Parser do wyodrębniania danych formularza PDF?
GroupDocs.Parser zapewnia wysoce precyzyjne wyodrębnianie ponad 150 różnych typów pól formularza i może obsługiwać pliki PDF do 500 stron bez ładowania całego pliku do pamięci. Obsługuje ponad 50 formatów wyjściowych (w tym DOCX, XLSX, HTML i typy obrazów) oraz przetwarza do 200 stron na sekundę na typowym procesorze klasy serwerowej, co czyni go idealnym rozwiązaniem do automatyzacji na dużą skalę.
Wymagania wstępne
- Java Development Kit (JDK): Java 8 or later
- Maven: Do zarządzania zależnościami i budowania projektu
- Basic Java knowledge: Znajomość klas, metod i koncepcji OOP
Konfiguracja GroupDocs.Parser dla Javy
Zintegruj GroupDocs.Parser z projektem, używając Maven lub pobierając bibliotekę bezpośrednio.
Integracja z Maven
Dodaj repozytorium i zależność do pliku pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/parser/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-parser</artifactId>
<version>25.5</version>
</dependency>
</dependencies>
Bezpośrednie pobranie
Alternatywnie pobierz najnowszą wersję z GroupDocs.Parser for Java releases.
Uzyskanie licencji
- Free Trial: Uzyskaj tymczasową licencję, aby przetestować funkcje GroupDocs.Parser.
- Purchase: Nabycie pełnej licencji do użytku komercyjnego.
Po udostępnieniu biblioteki możesz utworzyć instancję Parser, aby pracować z formularzami PDF:
Definition anchor: Klasa Parser jest podstawowym komponentem GroupDocs.Parser, który odczytuje i parsuje obsługiwane formaty dokumentów, udostępniając pola formularza, tekst i obrazy poprzez prosty API.
import com.groupdocs.parser.Parser;
public class PdfFormExtractor {
public static void main(String[] args) {
try (Parser parser = new Parser("YOUR_DOCUMENT_DIRECTORY/SampleCarWashPdf.pdf")) {
// Parse form fields from the document here...
}
}
}
Jak wyodrębnić dane formularza PDF
FieldData reprezentuje pojedyncze pole formularza wraz z jego nazwą i wyodrębnioną wartością.
Załaduj swój PDF jedną instrukcją Parser, żądaj tylko potrzebnych pól formularza i otrzymaj kolekcję obiektów FieldData, które zawierają zarówno nazwę pola, jak i jego wartość. Takie podejście minimalizuje zużycie pamięci i maksymalizuje przepustowość, szczególnie przy przetwarzaniu setek plików równocześnie.
Krok 1: Parsowanie pól formularza
Rozpocznij od utworzenia obiektu Parser i wywołania parseForm(), aby pobrać strukturę formularza:
import com.groupdocs.parser.Parser;
import com.groupdocs.parser.data.DocumentData;
public class ExtractDataFromPdfFormsFeature {
public static void run() {
String filePath = "YOUR_DOCUMENT_DIRECTORY/SampleCarWashPdf.pdf";
try (Parser parser = new Parser(filePath)) {
DocumentData data = parser.parseForm();
if (data == null) {
System.out.println("Form extraction isn't supported.");
return;
}
// Continue to extract field values...
}
}
}
Krok 2: Wyodrębnianie wartości pól
Użyj nazwy pola, aby pobrać treść tekstową z każdego obiektu FieldData. Ta metoda pokazuje również, jak bezpiecznie odczytywać pola formularza PDF:
import com.groupdocs.parser.data.FieldData;
import com.groupdocs.parser.data.PageTextArea;
private static String getFieldText(DocumentData data, String fieldName) {
FieldData fieldData = data.getFieldsByName(fieldName).get(0);
return fieldData != null && fieldData.getPageArea() instanceof PageTextArea
? ((PageTextArea) fieldData.getPageArea()).getText()
: null;
}
Krok 3: Utworzenie obiektu rekordu
Zapisz wyodrębnione wartości w ustrukturyzowanym rekordzie, aby można je było przechowywać lub wysyłać do innych systemów:
static class PreliminaryRecord {
public String Name;
public String Model;
public String Time;
public String Description;
}
// Extracted values are then assigned to the record fields:
PreliminaryRecord rec = new PreliminaryRecord();
rec.Name = getFieldText(data, "Name");
rec.Model = getFieldText(data, "Model");
rec.Time = getFieldText(data, "Time");
rec.Description = getFieldText(data, "Description");
Utwórz obiekt rekordu do przechowywania wyodrębnionych danych
PreliminaryRecord jest niestandardową klasą przechowującą dane do przechowywania wyodrębnionych wartości formularza PDF.
Dobrze zdefiniowany obiekt ułatwia integrację wyodrębnionych informacji z bazami danych, API lub platformami CRM.
Przegląd
Tworzenie ustrukturyzowanego obiektu pomaga zarządzać danymi formularza i integrować je z większymi systemami.
Kroki implementacji
- Initialize the Record Object: Utwórz instancję
PreliminaryRecord. - Populate with Extracted Values: Użyj powyższej metody pomocniczej, aby wypełnić obiekt.
public class CreateRecordObjectFeature {
public static void createAndPopulateRecord() {
PreliminaryRecord rec = new PreliminaryRecord();
// Simulated extracted values for demonstration:
rec.Name = "John Doe";
rec.Model = "Tesla Model S";
rec.Time = "10:00 AM";
rec.Description = "Routine service check";
// Now, the record object 'rec' can be used further.
}
}
Praktyczne zastosowania
- Automated Data Entry: Pobieraj dane klientów lub zamówień z formularzy PDF bezpośrednio do swojego backendu.
- Invoice Processing: Wyodrębniaj numery faktur, daty i kwoty, aby przyspieszyć uzgadnianie.
- Survey Responses Analysis: Zbieraj odpowiedzi z kwestionariuszy PDF do raportowania.
- Medical Records Management: Pobieraj informacje o pacjentach do systemów elektronicznej dokumentacji medycznej (EHR).
- Integration with CRM Systems: Uzupełniaj leady i kontakty w czasie rzeczywistym z wypełnionych PDF.
Rozważania dotyczące wydajności
- Memory Management: Używaj try‑with‑resources (jak pokazano), aby zapewnić szybkie zamykanie instancji
Parser. - Selective Parsing: Żądaj tylko potrzebnych pól, aby zmniejszyć obciążenie CPU.
- Thread Safety: Przy przetwarzaniu wielu plików PDF uruchamiaj każdą instancję
Parserw osobnym wątku; biblioteka jest bezpieczna wątkowo przy takim użyciu.
Najczęściej zadawane pytania
Q: Czy mogę wyodrębnić obrazy z PDF przy użyciu GroupDocs.Parser?
A: Tak, GroupDocs.Parser obsługuje wyodrębnianie obrazów wraz z polami tekstowymi.
Q: Jak obsłużyć zaszyfrowane pliki PDF?
A: Podaj hasło przy tworzeniu instancji Parser; biblioteka automatycznie odszyfruje dokument.
Q: Jakie inne formaty plików są obsługiwane oprócz PDF?
A: API także parsuje dokumenty Word, arkusze Excel, prezentacje PowerPoint i wiele innych.
Q: Jaki jest najlepszy sposób przetwarzania dużych ilości plików PDF?
A: Połącz strumienie równoległe z wykonawcą puli wątków, aby parsować wiele plików jednocześnie, zachowując limity pamięci.
Q: Czy wymagana jest licencja komercyjna do użytku produkcyjnego?
A: Tak, pełna licencja jest potrzebna do wdrożeń produkcyjnych; dostępna jest wersja próbna do oceny.
Zakończenie
Masz teraz kompletną, gotową do produkcji metodę wyodrębniania danych formularza PDF przy użyciu GroupDocs.Parser w Javie. Parsując pola formularza, tworząc ustrukturyzowane obiekty rekordów i uwzględniając kwestie wydajności, możesz zautomatyzować wprowadzanie danych, integrować się z systemami downstream i odblokować ukrytą wartość w swoich formularzach PDF. Aby uzyskać więcej szczegółów, zapoznaj się z oficjalną dokumentacją.
Ostatnia aktualizacja: 2026-06-27
Testowano z: GroupDocs.Parser 25.5
Autor: GroupDocs