Converti PDF in testo in C#

Converti PDF in testo in C#

Di recente, abbiamo pubblicato alcuni post del blog come conversione PDF in HTML e PDF in immagini in modo programmatico. Questo articolo ci insegnerà come convertire PDF in testo in C# usando una libreria OCR .NET. Come sviluppatore .NET, puoi facilmente utilizzare questa libreria per convertire file in altri formati di file popolari. Inoltre, è disponibile una ricca serie di funzionalità per automatizzare il processo di estrazione del testo dai documenti PDF. Tuttavia, scriveremo i passaggi e lo snippet di codice per dimostrare l’estrazione del testo da un file PDF scansionato.

I seguenti punti saranno trattati in questo articolo:

Installazione della libreria .NET OCR

Questa libreria è potente e offre documentazione completa per quanto riguarda lo sviluppo e l’utilizzo. Puoi convertire ed elaborare vari formati di file in modo rapido ed efficiente.

Per installare questa API nel tuo progetto .NET, puoi scaricare i file DLL o eseguire il comando seguente nel gestore di pacchetti NuGet.

Install-Package Aspose.OCR

Come convertire PDF in testo in C#

L’estrazione di testo da un file PDF scansionato è abbastanza semplice ed è una questione di poche righe di codice sorgente in C#.

Si prega di seguire i passaggi indicati di seguito:

  1. Crea un oggetto della classe AsposeOcr.
  2. Inizializza un’istanza della classe DocumentRecognitionSettings per riconoscere le immagini dal PDF.
  3. Impostare il valore della proprietà DetectAreas per abilitare il rilevamento automatico delle aree di testo.
  4. Creare un elenco di tipi RecognitionResult, estrarre il testo dai documenti PDF scansionati chiamando il metodo RecognizePdf e assegnare il risultato all’elenco.

Copia e incolla il codice seguente per convertire PDF in TESTO in C#.


string fullPath =   "sample.pdf";
// Crea un oggetto della classe AsposeOcr 
AsposeOcr api = new AsposeOcr();
// Inizializza un'istanza della classe DocumentRecognitionSettings per riconoscere le immagini da PDF  
DocumentRecognitionSettings set = new DocumentRecognitionSettings();
// impostare il valore della proprietà DetectAreas per abilitare il rilevamento automatico delle aree di testo 
set.DetectAreas = false;
// creare un elenco di tipo RecognitionResult, estrarre il documento PDF scansionato da modulo di testo chiamando il metodo RecognizePdf e assegnare il risultato all'elenco  
List<RecognitionResult> result = api.RecognizePdf(fullPath, set);
// Risultato di stampa
int pageNumber = 0;
foreach (var page in result)
    {                
        System.Console.WriteLine($"Page: {pageNumber++} text: {page.RecognitionText}");
    }

Conversione da PDF a testo - opzioni avanzate

In questa sezione, esploreremo ulteriormente questa libreria. Ti consente anche di riconoscere i PDF scansionati dallo stream.

Di seguito sono riportati i passaggi:

  1. Istanziare un’istanza della classe AsposeOcr.
  2. Crea un’istanza della classe MemoryStream per riconoscere il PDF dallo stream.
  3. Inizializza il costruttore di FileStream e carica il file di origine.
  4. Richiamare il metodo CopyTo per scrivere i byte nel flusso di memoria.
  5. Crea un oggetto della classe DocumentRecognitionSettings che riconosca le immagini dal PDF.
  6. Creare un elenco di tipi RecognitionResult e inizializzare con i risultati del metodo RecognizePdf.

string fullPath =   "final.pdf";
// istanziare un'istanza della classe AsposeOcr 
AsposeOcr api = new AsposeOcr();
// Crea un'istanza della classe MemoryStream per riconoscere il pdf dallo stream     
using (MemoryStream ms = new MemoryStream())
{
    // Inizializza il costruttore di FileStream e carica il file di origine  
    using (FileStream file = new FileStream(fullPath, FileMode.Open, FileAccess.Read))
    {
        // Richiamare il metodo CopyTo per scrivere i byte nel flusso di memoria.  
        file.CopyTo(ms);
        // Crea un oggetto della classe DocumentRecognitionSettings che riconosce le immagini da PDF 
        DocumentRecognitionSettings set = new DocumentRecognitionSettings();
        // Creare un elenco di tipo RecognitionResult e inizializzare con i risultati del metodo RecognizePdf.  
        List<RecognitionResult> results = api.RecognizePdf(ms, set);     

        // Risultato di stampa
        foreach (var result in results)
        {
            Console.WriteLine(result.RecognitionText);
        }
    }
}

Ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita per provare l’API senza limitazioni di valutazione.

Riassumendo

Questo ci porta alla fine di questo post sul blog. Hai imparato a convertire PDF in testo in C# a livello di codice. Inoltre, abbiamo anche esplorato alcuni metodi avanzati offerti da questa libreria OCR .NET. Inoltre, puoi visitare la documentazione per conoscere altre funzionalità. Questa guida ti aiuterà sicuramente se stai cercando di dotare la tua applicazione di un convertitore da PDF a testo. Inoltre, conholdate.com sta scrivendo nuovi post sul blog su nuovi argomenti. Pertanto, si prega di rimanere in contatto per aggiornamenti regolari.

Fai una domanda

Puoi farci sapere le tue domande o richieste sul nostro forum.

Domande frequenti

Come posso convertire un PDF in testo a livello di codice?

Puoi convertire PDF in testo in C# usando questo OCR .NET libreria. Espone il metodo RecognizePdf che esegue questa azione in modo efficiente.

Qual è il modo più semplice per convertire PDF in testo

Puoi visitare la documentazione di questa libreria per conoscere i metodi con cui puoi estrarre i dati dai file PDF scansionati in modo programmatico.

Guarda anche