Поиск PDF-файлов с помощью C#

Высокопроизводительный поиск PDF-документов с использованием серверного Aspose.PDF для API .NET

Как искать PDF-файлы с помощью C#

Для поиска PDF-файла мы будем использовать API Aspose.PDF, который представляет собой многофункциональный, мощный и простой в использовании API для работы с документами. Откройте диспетчер пакетов NuGet, найдите файл Aspose.PDF и установите его. Можно также использовать следующую команду из консоли диспетчера пакетов. Подписывая PDF-документ с помощью подписи, вы в основном подтверждаете его содержимое «как есть». Следовательно, любые другие изменения, внесенные позже, аннулируют подпись, и, таким образом, вы узнаете, был ли документ изменен.

Поиск PDF-документа без открытия с помощью.NET:

  1. Создайте объект TextFragmentAbsorber с текстом для поиска в качестве параметра.
  2. Получите всю коллекцию извлеченных фрагментов текста.
  3. Просмотрите каждый фрагмент, чтобы получить всю информацию о нем.

Поиск в PDF-файле

В этом примере кода показано, как искать PDF-файл с помощью.NET

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