Sök text och rita rektangel

Introduktion

Vill du förbättra dina färdigheter i PDF-manipulation? Vill du lära dig hur du söker efter specifik text i PDF-filer och markerar den med en rektangel? Du har landat på den perfekta guiden! Idag ska jag gå igenom hur du använder Aspose.PDF för .NET för att söka efter text i ett PDF-dokument och rita rektanglar runt det. Den här artikeln kommer att ge en steg-för-steg handledning utformad med tydlighet och användbarhet i åtanke, vilket säkerställer att du kan följa med och tillämpa dessa tekniker i dina projekt.

Förutsättningar

Innan vi dyker in i handledningen, låt oss förbereda vad du behöver för att säkerställa ett smidigt arbetsflöde:

  1. Grundläggande förståelse för .NET: Du bör vara bekant med C#-programmering och .NET-ramverket för att kunna följa denna handledning på ett effektivt sätt.

  2. Visual Studio installerad: Du behöver en integrerad utvecklingsmiljö (IDE) för att skriva och testa din kod. Visual Studio Community är ett bra alternativ, och det är gratis.

  3. Aspose.PDF för .NET: Du måste ha Aspose.PDF-biblioteket installerat i ditt projekt. Du kan ladda ner denhär eller överväga entillfällig licens för utökade funktioner.

  4. Exempel på PDF-dokument: För denna handledning behöver du ett exempel på PDF-fil med namnetSearchAndGetTextFromAll.pdf lagras i din projektkatalog.

Importera paket

För att komma igång måste du först importera de nödvändiga paketen till ditt .NET-projekt. Följ dessa steg:

Öppna Visual Studio

Starta Visual Studio och skapa en ny konsolapplikation eller använd en befintlig där du vill implementera PDF-funktionerna.

Lägg till Aspose.PDF till ditt projekt

  1. Högerklicka på ditt projekt i Solution Explorer.
  2. Välj “Hantera NuGet-paket.”
  3. Leta efterAspose.PDF och installera den senaste versionen.

Genom att göra detta lägger du grunden för alla fantastiska PDF-manipulationer du ska utföra.

Importera namnområden

Överst i din programfil vill du importera de relevanta namnområdena från Aspose-biblioteket:

using System.IO;
using Aspose.Pdf;
using Aspose.Pdf.Text;
using System;
using Aspose.Pdf.Facades;

Detta gör det lättare att komma åt klasser och metoder inom Aspose.PDF-biblioteket för dina uppgifter.

Nu när du har allt inställt, låt oss dela upp processen att söka efter text i en PDF och rita en rektangel runt den i hanterbara steg.

Steg 1: Ställ in sökvägen för ditt dokument

Ange först sökvägen till din PDF-fil. Se till att byta utYOUR DOCUMENT DIRECTORY med den faktiska vägen där dinSearchAndGetTextFromAll.pdf lagras.

string dataDir = "YOUR DOCUMENT DIRECTORY";

Steg 2: Öppna PDF-dokumentet

Skapa sedan en instans avDocument klass för att ladda din PDF:

Document document = new Document(dataDir + "SearchAndGetTextFromAll.pdf");

Denna kodrad öppnar din specificerade PDF-fil, så att du kan manipulera den ytterligare.

Steg 3: Skapa en textabsorberare

Nu behöver du ett sätt att söka efter text i det dokumentet. För detta använder viTextFragmentAbsorber:

TextFragmentAbsorber textAbsorber = new TextFragmentAbsorber(@"[\S]+");

Det reguljära uttrycket@"[\S]+" är utformad för att matcha alla icke-blankstegssträngar i PDF-filen.

Steg 4: Konfigurera textsökningsalternativ

Därefter bör du ställa in alternativen för textsökning:

TextSearchOptions textSearchOptions = new TextSearchOptions(true);
textAbsorber.TextSearchOptions = textSearchOptions;

Här, dentrue parametern betyder att sökningen är skiftlägeskänslig. Du kan ställa in den påfalse om du vill ha en skiftlägesokänslig sökning.

Steg 5: Acceptera Text Absorber i dokumentet

Med dinTextFragmentAbsorber och sökalternativ redo, är det dags att absorbera text från dokumentet:

document.Pages.Accept(textAbsorber);

Den här metoden undersöker varje sida i din PDF för att hitta textfragment som matchar det angivna mönstret.

Steg 6: Skapa en PdfContentEditor

För att rita former på dokumentet behöver duPdfContentEditor:

var editor = new PdfContentEditor(document);

Med den här redigeraren kan du enkelt manipulera och redigera PDF-innehållet.

Steg 7: Gå igenom hittade textfragment

Nu vill du gå igenom de hittade textfragmenten för att rita rektanglar runt dem:

foreach (TextFragment textFragment in textAbsorber.TextFragments)
{
    foreach (TextSegment textSegment in textFragment.Segments)
    {
        DrawBox(editor, textFragment.Page.Number, textSegment, System.Drawing.Color.Red);
    }
}

Denna loop itererar över varje textfragment och deras segment och anropar aDrawBox metod för rektangelritning.

Steg 8: Definiera DrawBox-metoden

Du måste definieraDrawBox metod, som kommer att hantera rektangelritningslogiken. Här är en enkel implementering:

private static void DrawBox(PdfContentEditor editor, int pageNumber, TextSegment textSegment, System.Drawing.Color color)
{
    // Beräkna rektangeldimensionerna baserat på textsegmentet
    float x = textSegment.Rectangle.LLX;
    float y = textSegment.Rectangle.LLY;
    float width = textSegment.Rectangle.Width;
    float height = textSegment.Rectangle.Height;

    // Rita en rektangel med hjälp av de beräknade värdena
    editor.DrawRectangle(pageNumber, x, y, width, height, color, 1);
}

Den här metoden bestämmer rektangelns position och storlek baserat på segmentets avgränsande rektangel och använder editorn för att rita den.

Steg 9: Spara det ändrade dokumentet

Efter att ha ritat rektanglarna runt den hittade texten kan du spara det ändrade dokumentet:

dataDir = dataDir + "SearchTextAndDrawRectangle_out.pdf";
document.Save(dataDir);

Se till att din nya fil sparas med ett distinkt namn för att undvika att ditt originaldokument skrivs över.

Steg 10: Bekräftelsemeddelande

Skriv slutligen ut ett bekräftelsemeddelande till konsolen för att låta dig veta att operationen lyckades:

Console.WriteLine("\nRectangle drawn successfully on searched text.\nFile saved at " + dataDir);

Och där har du det! Du har framgångsrikt skapat ett skript för att söka efter text i en PDF och markera den med rektanglar.

Slutsats

Grattis! Du har precis låst upp en kraftfull färdighet som avsevärt kan förbättra dina PDF-manipuleringsförmåga med Aspose.PDF för .NET. Med bara några enkla steg kan du söka efter vilken text som helst i ditt dokument och markera den visuellt, vilket gör dina PDF-dokument mer interaktiva och hanterbara. Tveka inte att experimentera med olika regexmönster och färgalternativ för att verkligen göra detta verktyg till ditt eget!

FAQ’s

Vad är Aspose.PDF för .NET?

Aspose.PDF för .NET är ett bibliotek som ger ett omfattande sätt att skapa, manipulera och konvertera PDF-dokument programmatiskt.

Kan jag använda Aspose.PDF gratis?

Ja, Aspose erbjuder en gratis provperiod som du kan använda för att testa bibliotekets funktioner. Kolla in dethär.

Vilket programmeringsspråk behöver jag använda med Aspose.PDF för .NET?

Aspose.PDF för .NET är designad för att användas med C# och andra .NET-språk.

Hur får jag hjälp med Aspose.PDF?

Du kan besöka Asposes supportforum för att få hjälp angående alla problem eller frågor du kan ha. Hitta supporthär.

Var laddar jag ner Aspose.PDF för .NET?

Du kan ladda ner biblioteket från Asposes webbplats,här.