PDF Dosyalarını C++ içinde ara

Microsoft veya Adobe PDF gibi herhangi bir yazılım kullanmadan C++ API’leri için sunucu tarafı Aspose.PDF kullanarak yerel ve yüksek performanslı PDF belge araması.

C++ Kullanarak PDF Dosyası Nasıl Aranır

PDF dosyasında arama yapmak için cpp platformu için zengin özelliklere sahip, güçlü ve kullanımı kolay bir belge işleme API’si olan C++ için Aspose.PDF API’sini kullanacağız. NuGet paket yöneticisini açın, Aspose.PDF öğesini arayın ve yükleyin. Paket Yöneticisi Konsolu’ndan aşağıdaki komutu da kullanabilirsiniz.

Package Manager Console

PM > Install-Package Aspose.PDF.Cpp

C++ aracılığıyla PDF Dosyasını Ara


Ortamınızdaki kodu denemek için C++ için Aspose.PDF gerekir.

  1. PDF’yi bir Belge örneğiyle yükleyin.
  2. Parametre olarak bulmak için metinle TextFragmenTabsorber Nesnesi oluşturun.
  3. Çıkarılan tüm metin parçaları koleksiyonunu alın.
  4. Tüm bilgilerini almak için her parçayı dolaşın.

PDF Dosyalarında Ara - C++.


// 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());
}