52

Я пробовал несколько программ: pdftotext, pdf2txt.py, ... Все они могут извлекать текст из PDF - файлов, но один , который делает лучшую работу хорошо старины less текст из PDF имеет раскладку. Как меньше это делать? Использует ли она какую-либо библиотеку или встроенная обработка PDF?

Я спрашиваю, потому что я хотел бы использовать эту функциональность программно, без необходимости запускать меньше как внешнюю программу (я делаю Python).

Моя система:

» less --version
less 458 (GNU regular expressions)
Copyright (C) 1984-2012 Mark Nudelman

less comes with NO WARRANTY, to the extent permitted by law.
For information about the terms of redistribution,
see the file named README in the less distribution.
Homepage: http://www.greenwoodsoftware.com/less

» uname -a
Linux polyphemus 3.13.0-53-generic #89-Ubuntu SMP Wed May 20 10:34:39 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

1 ответ1

63

В вашем дистрибутиве, вероятно, используется популярный скрипт lesspipe.sh . Проверьте переменную среды LESSOPEN .

Этот сценарий существует во многих вариациях. Я смотрю на версию Gentoo. В нем вы найдете следующую строку:

*.ps|*.pdf) ps2ascii "$1" || pstotext "$1" || pdftotext "$1" ;;

Это означает, что он попробует эти команды в указанном порядке. $1 - это имя файла.

Другая версия использует следующую команду:

pdftohtml -stdout "$t" | parsehtml -

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .