Πώς να εξαγάγετε κείμενο από σαρωμένο PDF σε C#

Αυτός ο οδηγός βήμα προς βήμα σάς δείχνει πώς να εξαγάγετε κείμενο από το σαρωμένο PDF σε C#. Όταν σαρώνετε έγγραφα σε PDF, αυτές οι σελίδες προστίθενται ως σαρωμένες εικόνες μέσα στο αρχείο PDF. Έτσι, για να εξαγάγετε κείμενο από το σαρωμένο αρχείο PDF, θα πρέπει πραγματικά να εξαγάγετε κείμενο από εικόνες σε PDF σε C#, εφαρμόζοντας την Οπτική Αναγνώριση Χαρακτήρων (OCR).

Βήματα για την εξαγωγή κειμένου από σαρωμένο PDF σε C#

  1. Λάβετε το Aspose.OCR for .NET από τον διαχειριστή πακέτων NuGet.org
  2. Προσθήκη αναφοράς στο Aspose.OCR namespace
  3. Εφαρμόστε τον κωδικό άδειας χρήσης χρησιμοποιώντας τη μέθοδο SetLicense
  4. Ξεκινήστε μια παρουσία της κλάσης AsposeOcr
  5. Καθορίστε τις ρυθμίσεις αναγνώρισης χρησιμοποιώντας DocumentRecognitionSettings class
  6. Εξαγάγετε όλες τις σελίδες PDF χρησιμοποιώντας τη μέθοδο RecognizePDF
  7. Λάβετε κείμενο από κάθε σελίδα PDF χρησιμοποιώντας την ιδιότητα RecognitionText

Με τη βοήθεια των παραπάνω βημάτων, μπορείτε να διαβάσετε κείμενο από σαρωμένο PDF σε C# γρήγορα και εύκολα. Νωρίτερα, σας δείξαμε πώς να Εξαγωγή κειμένου από εικόνα σε C#. Ωστόσο, αυτό το παράδειγμα σάς βοηθά να λαμβάνετε κείμενο από PDF σε C#.

Κώδικας για εξαγωγή κειμένου από σαρωμένο PDF σε C#

using System;
using System.Collections.Generic;
//Use following namespace to extract text from scanned PDF
using Aspose.OCR;
namespace ExtractTextFromScannedPDFFile
{
class Program
{
static void Main(string[] args)
{
//Set license before extracting text from scanned PDF file
Aspose.OCR.License AsposeOCRLicense = new Aspose.OCR.License();
AsposeOCRLicense.SetLicense(@"c:\asposelicense\license.lic");
//create AsposeOcr object
AsposeOcr ScannedPDFFile = new AsposeOcr();
//set recognition settings
DocumentRecognitionSettings RecognitionSettings = new DocumentRecognitionSettings();
RecognitionSettings.StartPage = 1;
RecognitionSettings.PagesNumber = 3;
//when set true, improves accuracy but reduces speed
RecognitionSettings.DetectAreas = false;
//extract text from specified pages
List<RecognitionResult> ExtractedResults = ScannedPDFFile.RecognizePdf("InputScannedPDFFile.pdf", RecognitionSettings);
//fetch extracted text of each page
int PageCounter = 1;
foreach(RecognitionResult SinglePage in ExtractedResults)
{
Console.WriteLine("Page: {0}, Extracted Text:{1}", PageCounter, SinglePage.RecognitionText);
PageCounter++;
}
}
}
}

Το παραπάνω παράδειγμα λήψης κειμένου C# από PDF είναι απλό και κατανοητό. Απλώς διαβάζουμε ένα σαρωμένο αρχείο PDF και μετά εξάγουμε κείμενο από κάθε σελίδα. Ωστόσο, ένα σημαντικό σημείο που πρέπει να κατανοήσετε εδώ είναι η ιδιότητα DetectArea. Εάν το ορίσετε σε true τότε θα σας παρέχει μεγαλύτερη ακρίβεια αλλά θα μειώσει την ταχύτητα επεξεργασίας του PDF. Ωστόσο, ρυθμίζοντας το σε false, η ταχύτητα θα βελτιωθεί και η ακρίβεια μπορεί να μειωθεί λίγο. Επομένως, πρέπει να επιλέξετε ανάμεσα στις δύο επιλογές με βάση την κατάστασή σας.

 Ελληνικά