Text suchen und Rechteck zeichnen
Einführung
Möchten Sie Ihre PDF-Bearbeitungsfähigkeiten verbessern? Möchten Sie lernen, wie Sie in PDF-Dateien nach bestimmtem Text suchen und ihn mit einem Rechteck hervorheben? Dann sind Sie hier genau richtig! Heute zeige ich Ihnen, wie Sie mit Aspose.PDF für .NET in einem PDF-Dokument nach Text suchen und Rechtecke darum zeichnen. Dieser Artikel bietet eine Schritt-für-Schritt-Anleitung, die auf Klarheit und Nützlichkeit ausgelegt ist, damit Sie diese Techniken nachvollziehen und auf Ihre Projekte anwenden können.
Voraussetzungen
Bevor wir uns in das Tutorial vertiefen, bereiten wir alles vor, was Sie für einen reibungslosen Arbeitsablauf benötigen:
Grundlegende Kenntnisse in .NET: Sie sollten mit der C#-Programmierung und dem .NET-Framework vertraut sein, um diesem Tutorial effektiv folgen zu können.
Visual Studio installiert: Sie benötigen eine integrierte Entwicklungsumgebung (IDE), um Ihren Code zu schreiben und zu testen. Visual Studio Community ist eine großartige Option und kostenlos.
Aspose.PDF für .NET: Sie müssen die Aspose.PDF-Bibliothek in Ihrem Projekt installiert haben. Sie können sie herunterladenHier oder erwägen Sie einevorläufige Lizenz für erweiterte Funktionen.
Beispiel-PDF-Dokument: Für dieses Tutorial benötigen Sie eine Beispiel-PDF-Datei mit dem Namen
SearchAndGetTextFromAll.pdf
in Ihrem Projektverzeichnis gespeichert.
Pakete importieren
Um zu beginnen, müssen Sie zunächst die erforderlichen Pakete in Ihr .NET-Projekt importieren. Folgen Sie diesen Schritten:
Öffnen Sie Visual Studio
Starten Sie Visual Studio und erstellen Sie eine neue Konsolenanwendung oder verwenden Sie eine vorhandene, in der Sie die PDF-Funktionen implementieren möchten.
Fügen Sie Aspose.PDF zu Ihrem Projekt hinzu
- Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihr Projekt.
- Wählen Sie „NuGet-Pakete verwalten“ aus.
- Suchen nach
Aspose.PDF
und installieren Sie die neueste Version.
Auf diese Weise legen Sie den Grundstein für alle erstaunlichen PDF-Manipulationen, die Sie durchführen werden.
Namespaces importieren
Oben in Ihrer Programmdatei möchten Sie die relevanten Namespaces aus der Aspose-Bibliothek importieren:
using System.IO;
using Aspose.Pdf;
using Aspose.Pdf.Text;
using System;
using Aspose.Pdf.Facades;
Dies erleichtert den Zugriff auf Klassen und Methoden innerhalb der Aspose.PDF-Bibliothek für Ihre Aufgaben.
Nachdem Sie nun alles eingerichtet haben, unterteilen wir den Vorgang der Textsuche in einer PDF-Datei und des Zeichnens eines Rechtecks darum in überschaubare Schritte.
Schritt 1: Legen Sie den Pfad für Ihr Dokument fest
Legen Sie zunächst den Pfad zu Ihrer PDF-Datei fest. Ersetzen SieYOUR DOCUMENT DIRECTORY
mit dem tatsächlichen Pfad, auf dem IhrSearchAndGetTextFromAll.pdf
gespeichert ist.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Schritt 2: Öffnen Sie das PDF-Dokument
Erstellen Sie als nächstes eine Instanz desDocument
Klasse zum Laden Ihres PDF:
Document document = new Document(dataDir + "SearchAndGetTextFromAll.pdf");
Diese Codezeile öffnet Ihre angegebene PDF-Datei und ermöglicht Ihnen weitere Bearbeitungen.
Schritt 3: Erstellen Sie einen Textabsorber
Nun benötigen Sie eine Möglichkeit, innerhalb dieses Dokuments nach Text zu suchen. Dazu verwenden wir dieTextFragmentAbsorber
:
TextFragmentAbsorber textAbsorber = new TextFragmentAbsorber(@"[\S]+");
Der reguläre Ausdruck@"[\S]+"
ist so konzipiert, dass es mit jeder Zeichenfolge im PDF übereinstimmt, die keine Leerzeichen enthält.
Schritt 4: Konfigurieren Sie die Textsuchoptionen
Als nächstes sollten Sie die Textsuchoptionen einrichten:
TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textAbsorber.TextSearchOptions = textSearchOptions;
Hier dietrue
Parameter bedeutet, dass die Suche Groß- und Kleinschreibung berücksichtigt. Sie können ihn auffalse
wenn Sie eine Suche ohne Berücksichtigung der Groß-/Kleinschreibung wünschen.
Schritt 5: Akzeptieren Sie den Text Absorber im Dokument
Mit IhremTextFragmentAbsorber
und die Suchoptionen sind bereit. Jetzt ist es an der Zeit, Text aus dem Dokument aufzunehmen:
document.Pages.Accept(textAbsorber);
Diese Methode untersucht jede Seite in Ihrem PDF, um Textfragmente zu finden, die dem angegebenen Muster entsprechen.
Schritt 6: Erstellen Sie einen PdfContentEditor
Um Formen auf dem Dokument zu zeichnen, benötigen Sie diePdfContentEditor
:
var editor = new PdfContentEditor(document);
Mit diesem Editor können Sie den PDF-Inhalt problemlos bearbeiten und ändern.
Schritt 7: Durch gefundene Textfragmente schleifen
Nun möchten Sie die gefundenen Textfragmente durchlaufen, um Rechtecke um sie herum zu zeichnen:
foreach (TextFragment textFragment in textAbsorber.TextFragments)
{
foreach (TextSegment textSegment in textFragment.Segments)
{
DrawBox(editor, textFragment.Page.Number, textSegment, System.Drawing.Color.Red);
}
}
Diese Schleife durchläuft alle Textfragmente und deren Segmente und ruft einenDrawBox
Methode zum Zeichnen von Rechtecken.
Schritt 8: Definieren Sie die DrawBox-Methode
Sie müssen definieren,DrawBox
Methode, die die Logik zum Zeichnen des Rechtecks handhabt. Hier ist eine einfache Implementierung:
private static void DrawBox(PdfContentEditor editor, int pageNumber, TextSegment textSegment, System.Drawing.Color color)
{
// Berechnen Sie die Abmessungen des Rechtecks auf Basis des Textsegments
float x = textSegment.Rectangle.LLX;
float y = textSegment.Rectangle.LLY;
float width = textSegment.Rectangle.Width;
float height = textSegment.Rectangle.Height;
// Zeichnen Sie ein Rechteck mit den berechneten Werten
editor.DrawRectangle(pageNumber, x, y, width, height, color, 1);
}
Diese Methode bestimmt die Position und Größe des Rechtecks basierend auf dem Begrenzungsrechteck des Segments und verwendet den Editor, um es zu zeichnen.
Schritt 9: Speichern Sie das geänderte Dokument
Nachdem Sie Rechtecke um den gefundenen Text gezeichnet haben, können Sie das geänderte Dokument speichern:
dataDir = dataDir + "SearchTextAndDrawRectangle_out.pdf";
document.Save(dataDir);
Stellen Sie sicher, dass Ihre neue Datei unter einem eindeutigen Namen gespeichert wird, um ein Überschreiben Ihres Originaldokuments zu vermeiden.
Schritt 10: Bestätigungsnachricht
Drucken Sie abschließend eine Bestätigungsmeldung auf der Konsole aus, um Sie darüber zu informieren, dass der Vorgang erfolgreich war:
Console.WriteLine("\nRectangle drawn successfully on searched text.\nFile saved at " + dataDir);
Und da haben Sie es! Sie haben erfolgreich ein Skript erstellt, um in einer PDF-Datei nach Text zu suchen und ihn mit Rechtecken hervorzuheben.
Abschluss
Herzlichen Glückwunsch! Sie haben gerade eine leistungsstarke Fähigkeit freigeschaltet, die Ihre PDF-Bearbeitungsfähigkeiten mit Aspose.PDF für .NET erheblich verbessern kann. Mit nur wenigen einfachen Schritten können Sie nach beliebigem Text in Ihrem Dokument suchen und ihn visuell hervorheben, wodurch Ihre PDF-Dokumente interaktiver und handlicher werden. Zögern Sie nicht, mit verschiedenen Regex-Mustern und Farboptionen zu experimentieren, um dieses Tool wirklich zu Ihrem eigenen zu machen!
Häufig gestellte Fragen
Was ist Aspose.PDF für .NET?
Aspose.PDF für .NET ist eine Bibliothek, die eine umfassende Möglichkeit zum programmgesteuerten Erstellen, Bearbeiten und Konvertieren von PDF-Dokumenten bietet.
Kann ich Aspose.PDF kostenlos nutzen?
Ja, Aspose bietet eine kostenlose Testversion an, mit der Sie die Funktionen der Bibliothek testen können. Probieren Sie es ausHier.
Welche Programmiersprache muss ich mit Aspose.PDF für .NET verwenden?
Aspose.PDF für .NET ist für die Verwendung mit C# und anderen .NET-Sprachen konzipiert.
Wie bekomme ich Hilfe zu Aspose.PDF?
Sie können das Aspose-Supportforum besuchen, um Hilfe zu allen möglichen Problemen oder Fragen zu erhalten. Finden Sie SupportHier.
Wo lade ich Aspose.PDF für .NET herunter?
Sie können die Bibliothek von der Aspose-Website herunterladen.Hier.