Если вы запустите код извлечения текста и включите ведение журнала, вы увидите множество предупреждений:
Feb 12, 2019 5:45:58 PM org.apache.pdfbox.pdmodel.font.PDType0Font toUnicode
WARN: No Unicode mapping for CID+5482 (5482) in font GNPVNR+PingFangSC-Semibold
Feb 12, 2019 5:45:58 PM org.apache.pdfbox.pdmodel.font.PDType0Font toUnicode
WARN: No Unicode mapping for CID+1842 (1842) in font GNPVNR+PingFangSC-Semibold
Feb 12, 2019 5:45:58 PM org.apache.pdfbox.pdmodel.font.PDType0Font toUnicode
WARN: No Unicode mapping for CID+7566 (7566) in font GNPVNR+PingFangSC-Semibold
Feb 12, 2019 5:45:58 PM org.apache.pdfbox.pdmodel.font.PDType0Font toUnicode
WARN: No Unicode mapping for CID+1915 (1915) in font GNPVNR+PingFangSC-Semibold
...
Действительно, при просмотре PDF-файла обнаруживается, что существует множество подмножеств встроенных стилей PingFangSC, но каждый раз
- с картой ToUnicode без записей вообще,
- с кодировкой Identity-H и
- с Adobe-Identity-0 ROS ,
, т. е. без какой-либо информации, какой глиф представляет какую кодовую точку Unicode.Таким образом, это не должно удивлять, что результаты извлечения текста очень отсутствуют.
Так что, если вам действительно нужно извлечь текст, попросите источник PDF предоставить копию, которая включает в себя необходимую информацию.Если это невозможно, попробуйте OCR.
Кстати, хорошей первой проверкой обычно является попытка скопировать и вставить текст из Adobe Reader.В данном случае это также приводит к отсутствию символов.Обычно это означает, что информация, необходимая для извлечения текста в соответствии со спецификацией PDF, отсутствует.
Еще несколько фонов вы найдете по ссылке @Tilman, приведенной в комментарии: https://pdfbox.apache.org/2.0/faq.html#text-extraction