Pesquisar arquivos PDF em C#

Pesquisa de documentos PDF nativos e de alto desempenho usando Aspose.PDF do lado do servidor para C# APIs, sem o uso de qualquer software como Microsoft ou Adobe PDF.

Como pesquisar arquivos PDF usando C#

Para pesquisar o arquivo PDF, usaremos a API Aspose.PDF for .NET, que é uma API de manipulação de documentos rica em recursos, poderosa e fácil de usar para a plataforma net. Abra o gerenciador de pacotes NuGet, procure por Aspose.pdf e instale. Você também pode usar o seguinte comando no Console do Gerenciador de Pacotes.

Package Manager Console

PM > Install-Package Aspose.PDF

Pesquisar arquivo PDF via C#


Você precisa Aspose.PDF for .NET testar o código em seu ambiente.

  1. Carregue o PDF com uma instância do Document.
  2. Crie um objeto TextFragmentAbsorber com texto para encontrar como parâmetro.
  3. Obtenha toda a coleção de fragmentos de texto extraídos.
  4. Percorra cada fragmento para obter todas as suas informações.

Pesquisar arquivos PDF - C#


//Search Text from All the Pages of PDF Document
Document pdfDocument = new Document("SearchAndGetTextFromAll.pdf");

// Create TextAbsorber object to find all instances of the input search phrase
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber("text");

// Accept the absorber for all the pages
pdfDocument.Pages.Accept(textFragmentAbsorber);

// Get the extracted text fragments
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;

// Loop through the fragments
foreach (TextFragment textFragment in textFragmentCollection)
{

    Console.WriteLine("Text : {0} ", textFragment.Text);
    Console.WriteLine("Position : {0} ", textFragment.Position);
    Console.WriteLine("XIndent : {0} ", textFragment.Position.XIndent);
    Console.WriteLine("YIndent : {0} ", textFragment.Position.YIndent);
    Console.WriteLine("Font - Name : {0}", textFragment.TextState.Font.FontName);
    Console.WriteLine("Font - IsAccessible : {0} ", textFragment.TextState.Font.IsAccessible);
    Console.WriteLine("Font - IsEmbedded : {0} ", textFragment.TextState.Font.IsEmbedded);
    Console.WriteLine("Font - IsSubset : {0} ", textFragment.TextState.Font.IsSubset);
    Console.WriteLine("Font Size : {0} ", textFragment.TextState.FontSize);
    Console.WriteLine("Foreground Color : {0} ", textFragment.TextState.ForegroundColor);
}