Wyszukaj pliki PDF w Java

Natywne i wydajne wyszukiwanie dokumentów PDF przy użyciu serwera Aspose.PDF dla interfejsów API Java, bez użycia jakiegokolwiek oprogramowania, takiego jak Microsoft czy Adobe PDF.

Jak przeszukiwać plik PDF za pomocą Java

Aby przeszukiwać pliki PDF, użyjemy interfejsu API Aspose.PDF for Java, który jest bogatym w funkcje, wydajnym i łatwym w użyciu interfejsem API konwersji dla platformy Java. Możesz pobrać jego najnowszą wersję bezpośrednio z Maven i zainstalować ją w ramach projektu opartego na Maven, dodając następujące konfiguracje do pom.xml.

Repository

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java AP</name>
    <url>https://releases.aspose.com/java/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>

Przeszukaj plik PDF przez Java


Potrzebujesz Aspose.PDF for Java, aby wypróbować kod w swoim środowisku.

  1. Załaduj plik PDF z wystąpieniem dokumentu.
  2. Tworzenie obiektu TextFragmentAbsorber z tekstem, aby znaleźć jako parametr.
  3. Pobierz całą kolekcję wyodrębnionych fragmentów tekstu.
  4. Pętla przez każdy fragment, aby uzyskać wszystkie jego informacje.

Wyszukaj pliki PDF - Java


// Load PDF document
Document pdfDocument = new Document("source.pdf");

// Create TextAbsorber object to find all instances of the input search phrase
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("\d{4}-\d{4}"); // like 1999-2000

// Set text search option to specify regular expression usage
TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textFragmentAbsorber.setTextSearchOptions(textSearchOptions);

// Accept the absorber for first page of document
pdfDocument.getPages().accept(textFragmentAbsorber);

// Get the extracted text fragments into collection
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.getTextFragments();

// Loop through the fragments
for (TextFragment textFragment : (Iterable<TextFragment>) textFragmentCollection) {
	System.out.println("Text :- " + textFragment.getText());
	System.out.println("Position :- " + textFragment.getPosition());
	System.out.println("XIndent :- " + textFragment.getPosition().getXIndent());
	System.out.println("YIndent :- " + textFragment.getPosition().getYIndent());
	System.out.println("Font - Name :- " + textFragment.getTextState().getFont().getFontName());
	System.out.println("Font - IsAccessible :- " + textFragment.getTextState().getFont().isAccessible());
	System.out.println("Font - IsEmbedded - " + textFragment.getTextState().getFont().isEmbedded());
	System.out.println("Font - IsSubset :- " + textFragment.getTextState().getFont().isSubset());
	System.out.println("Font Size :- " + textFragment.getTextState().getFontSize());
	System.out.println("Foreground Color :- " + textFragment.getTextState().getForegroundColor());
}