Kako izvesti tekst iz PDF-a u .NET-u

Kako izvesti tekst iz PDF-a u .NET-u

Ovaj članak pokazuje kako izvući tekst iz PDF dokumenata pomoću Aspose.PDF Text Extractor za .NET. naučit ćete kako koristiti sve podržane načine ekstrakcije – Pure, Raw i Plain – i automatizirati tokove rada za pojedinačne ili više PDF-a.

Real-svjetski problem

Za aplikacije u analizi podataka, migraciji dokumenata ili arhiviranju, automatizirana ekstrakcija teksta osigurava dosljednost, brzinu i točnost.

Pregled rješenja

Aspose.PDF Text Extractor za .NET pruža čistu, programiranu interfejs za ekstrakciju teksta u različitim formatima. Izaberite između Pure, Raw i Plain načina kako bi se prilagodili vašem slučaju korištenja – hoće li vam biti potrebna formatirana izlaznica, sirovi podaci ili ravni sadržaj.

Preduzeća

  • Visual Studio 2019 ili kasnije
  • .NET 6.0 ili noviji
  • Aspose.PDF za .NET instaliran preko NuGeta
PM> Install-Package Aspose.PDF

Korak po korak provedba

Korak 1: Instaliranje i konfiguracija Aspose.PDF

using Aspose.Pdf.Plugins;
using System.IO;

Korak 2: Izvadite tekst pomoću privremenog (Raw) načina

using (var extractor = new TextExtractor())
{
    var options = new TextExtractorOptions(); // Raw mode by default
    options.AddInput(new FileDataSource("input.pdf"));
    var resultContainer = extractor.Process(options);
    string textExtracted = resultContainer.ResultCollection[0].ToString();
    Console.WriteLine(textExtracted);
}

Korak 3: Izvadite tekst u čistom ili ravnomjernom načinu

  • **Čisti način: ** Održavaju relativne pozicije i dodaju prostore za usklađivanje.
  • Plan način: Stripe formatacije, izlazi tekst s minimalnim prostorima.
using (var extractor = new TextExtractor())
{
    var options = new TextExtractorOptions(TextExtractorOptions.TextFormattingMode.Pure); // Or .Plain
    options.AddInput(new FileDataSource("input.pdf"));
    var resultContainer = extractor.Process(options);
    string textExtracted = resultContainer.ResultCollection[0].ToString();
    Console.WriteLine(textExtracted);
}

Korištenje slučajeva i aplikacija (s varijacijama koda)

1. Batch izvlači tekst iz više PDF-a

string[] files = Directory.GetFiles(@"C:\PDFs", "*.pdf");
using (var extractor = new TextExtractor())
{
    var options = new TextExtractorOptions(TextExtractorOptions.TextFormattingMode.Pure);
    foreach (var file in files)
        options.AddInput(new FileDataSource(file));
    var resultContainer = extractor.Process(options);
    for (int i = 0; i < resultContainer.ResultCollection.Count; i++)
    {
        string extracted = resultContainer.ResultCollection[i].ToString();
        // Save to disk, process, or analyze as needed
        File.WriteAllText($@"C:\PDFs\out\{Path.GetFileNameWithoutExtension(files[i])}.txt", extracted);
    }
}

2. Izaberite način ekstrakcije na temelju slučaja korištenja

  • Koristite Pure za raspored poput tablice ili prostorsku formataciju.
  • Koristite Plain za čistu ekstrakciju ili analizu podataka.
  • Koristite Raw za neprocesirani tekst.

3. Post-proces izveden tekst

Nakon ekstrakcije, primijenite regex, čišćenje teksta ili pošaljite rezultate drugim uslugama (traženje, ML cijevi, itd.).

4. Integracija ekstrakcije s podatkovnim cijevi

Automatizirana ekstrakcija kao dio šire ETL, izvješćivanje ili protok rada za upravljanje dokumentima pomoću standardnih .NET praksi.

Zajednički izazovi i rješenja

Izazov: Neusklađen rezultat zbog složene strukture PDF-aRješenje: Pokušajte različite načine ekstrakcije (Pure, Plain, Raw) i usporedite rezultate.

Izazov: Brzina ekstrakcije bathaRješenje: Koristite jedan TextExtractor primjer i obrađivanje više datoteka u jednom krugu za najbolju učinkovitost.

Izazov: Posebni likovi ili problem kodiranjaRješenje: Koristite način za minimalno formiranje, a zatim primijenite prilagođenu obradu traka prema potrebi.

Učinkovitost i najbolje prakse

  • Provjerite sve tri načina ekstrakcije kako biste utvrdili optimalne rezultate za vaš tip dokumenta
  • Sačuvajte originalne PDF-ove prije batch operacija
  • Trgovanje proizvodnim imenima i organizacijom u radnim mjestima
  • Integrirano rješavanje pogrešaka i logiranje za čvrstoću

Potpuni primjer provedbe

using Aspose.Pdf.Plugins;
using System;
using System.IO;

class Program
{
    static void Main()
    {
        using (var extractor = new TextExtractor())
        {
            var options = new TextExtractorOptions(TextExtractorOptions.TextFormattingMode.Plain);
            options.AddInput(new FileDataSource(@"C:\PDFs\input.pdf"));
            var resultContainer = extractor.Process(options);
            string textExtracted = resultContainer.ResultCollection[0].ToString();
            File.WriteAllText(@"C:\PDFs\output.txt", textExtracted);
        }
    }
}

zaključak

Aspose.PDF Text Extractor za .NET pruža vam moćna, fleksibilna alata za ekstrakciju teksta u više formata – prikladna za obradu podataka, arhiviranje ili analizu.

 Hrvatski