Чтение текста из PDF с помощью iText7 + C#, текст не распознан - PullRequest
0 голосов
/ 20 марта 2020

Я хочу прочитать данные из PDF-документа. Я использую iText7:

var src = "<file location>";
var pdfDocument = new PdfDocument(new PdfReader(src));
var strategy = new LocationTextExtractionStrategy();
for (int i = 1; i <= pdfDocument.GetNumberOfPages(); ++i)
{
     var page = pdfDocument.GetPage(i);
     string text = PdfTextExtractor.GetTextFromPage(page, strategy);
     string processed = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(text)));
}
pdfDocument.Close();

Работает, но не распознает буквы. Весь текст выглядит как

"���������� \ n������������������������� \ n ����������������������������������� \ n

На английском языке sh , поэтому я не ожидаю каких-либо проблем с кодировкой. В чем причина этой проблемы и как я могу ее исправить?

1 Ответ

0 голосов
/ 20 марта 2020

Вам не нужно преобразование, которое вы делаете. Измените код на:

StringBuilder processed = new StringBuilder();

    for (int i = 1; i <= pdfDocument.GetNumberOfPages(); ++i)
    {
         var page = pdfDocument.GetPage(i);
         string text = PdfTextExtractor.GetTextFromPage(page, strategy);
         processed.Append(text);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...