Это проблема, с которой вы можете столкнуться при извлечении текста в формате PDF. Формат pdf может обрабатывать несколько разных типов шрифтов и обрабатывать их по-разному. В случае с вашим документом шрифт рассматриваемого текста - это шрифт type0 (PostScript), который называется CAL invisible TT.
Часто программа описания страниц в pdf выводит строки с низким значением, не -Аксии байтов. Затем они ищутся в словаре кодирования шрифта, и соответствующий глиф извлекается из программы описания шрифта, которая встроена в файл. У вашего шрифта нет словаря кодировки - он помечен как Identity-H. Обычно это означает, что вместо него будет запись ToUnicode, а на самом деле ваша - но она фактически пуста.
Как иногда случается, в вашем случае глифы в программе описания шрифтов не отображаются в их правильное значение Ascii и просто отображаются непосредственно в эти младшие байтовые значения (например, глиф A может отображаться в 0x01, а не в его обычное значение 0x41).
В случае этого конкретного документа это фактически делается на цель предотвратить копирование / вставку.
Так почему же текст на странице выглядит нормально?
Это потому, что программа описания шрифта получает сообщение для печати глифа 0x01, но изображение это dr aws относится к букве A. Ни в коем случае сам pdf «не знает» значение ascii того, что он печатает. Ни одна другая программа, за исключением, возможно, программы OCR.
Вы можете доказать это, попытавшись скопировать и вставить текст. Это не работает, потому что отображаемые глифы не имеют точного базового представления ascii.
Без некоторого серьезного обратного инжиниринга вы не можете копировать и вставлять из этого конкретного документа, равно как и извлечение текста в формате PDF. инструменты. Я не говорю, что это невозможно, но очень маловероятно, что это будет тривиальная проблема, которую можно решить с помощью переполнения стека.
Лучшим вариантом, вероятно, будет OCR.