Suchen Sie PDF-Dateien mit C#

Leistungsstarke PDF-Dokumentsuche mit serverseitiger Aspose.PDF für .NET-APIs

So suchen Sie PDF mit C#

Um PDF-Dateien zu durchsuchen, verwenden wir die API Aspose.PDF, eine funktionsreiche, leistungsstarke und einfach zu verwendende API zur Bearbeitung von Dokumenten. Öffnen Sie den NuGet Paketmanager, suchen Sie nach Aspose.PDF und installieren Sie ihn. Sie können auch den folgenden Befehl von der Package Manager Console aus verwenden. Wenn Sie ein PDF-Dokument mit einer Signatur signieren, bestätigen Sie dessen Inhalt grundsätzlich „wie er ist“. Folglich machen alle anderen Änderungen, die später vorgenommen werden, die Signatur ungültig, sodass Sie wissen, ob das Dokument geändert wurde.

PDF-Dokument durchsuchen, ohne es mit .NET zu öffnen:

  1. Erstellen Sie ein TextFragmentAbsorber-Objekt mit dem zu suchenden Text als Parameter.
  2. Holen Sie sich die Sammlung aller extrahierten Textfragmente.
  3. Gehen Sie jedes Fragment durch, um alle zugehörigen Informationen zu erhalten.

PDF-Datei durchsuchen

Dieser Beispielcode zeigt, wie eine PDF-Datei mithilfe von.NET durchsucht wird

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