Я пытаюсь выполнить простейшую форму извлечения текста из PDF-файла с помощью iTextSharp.
var reader = new PdfReader(file);
var text = string.Empty;
for (var page = 1; page <= reader.NumberOfPages; page++)
{
text += PdfTextExtractor.GetTextFromPage(reader, page);
}
При этом выдается следующее исключение:
Unhandled Exception: System.FormatException: Input string was not in a correct format.
at System.Number.StringToNumber(ReadOnlySpan1 str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(ReadOnlySpan1 s, NumberStyles style, NumberFormatInfo info)
Копаясь глубже в стек вызовов, я вижу, что число, которое собирается анализировать, -115
и, похоже, это должно быть положительное число.Так что, возможно, что-то странное с этим конкретным PDF.(Кажется, что он внутри CreateFont, а отрицательные размеры шрифтов не имеют большого смысла. Хотя я не уверен, что это актуальная проблема)
Проблема в том, что мы не контролируем те PDF-файлы, которые они нам отправляют.клиенты.
есть ли способ обойти это?или проблема в чем-то другом?
Я не уверен, что еще можно опубликовать здесь, дайте мне знать, если есть что-то еще, что я могу предоставить.