Получение количества слов pdf-документа в Evince

19

Есть ли способ получить число слов PDF-документа, которое я просматриваю в Evince, просмотрщик PDF по умолчанию Ubuntu? Я могу преобразовать документы в текстовые файлы и получить количество слов с терминала, но я бы очень хотел, чтобы быстро получить их без использования терминала. Есть ли какой-либо плагин, который может это сделать, или он уже встроен, и я просто пропустил его?

P.S. Я бы предпочел не менять свой просмотр, поскольку Evince - это программа просмотра PDF по умолчанию в Ubuntu, и я бы очень хотел сделать как можно больше, используя приложения по умолчанию, так как многие из них, включая Evince, действительно приятны.     

задан Chris Wilson 08.11.2010 в 20:11
источник

4 ответа

10

Ответ от Олафа Лейдингера в списке рассылки Evince:

Я думаю, что такая функция лучше подходит для редакторов документов, так как они более подробная информация о документе в виде простого средства просмотра и подсчета слов тривиальный. Возьмите файл PDF в качестве примера. То, что вы видите как текст, может быть на самом деле векторной графики. Даже если текст содержится как таковой в файле PDF, эти слова, которые вы видите, могут состоять из нескольких «рисовать текст в позиции (y, x) "- команды - например, в случае умлаутов или конца строки. Таким образом, одно слово может считаться несколькими словами. Поэтому я думаю, что это может быть трудно реализовать такая функция надежно. Посмотрите на pdftotext, чтобы понять, что я имею в виду.
    
ответ дан Chris Wilson 10.11.2010 в 12:22
источник
25

Вы можете сделать это через командную строку:

pdftotext filename.pdf - | tr -d '.' | wc -w
    
ответ дан Sid 08.11.2010 в 20:22
9

Как насчет быстрого скрипта bash, требующего zenity и evince. Когда вызывается без аргумента, он даст вам диалоговое окно, чтобы вы могли выбрать файл. Когда вызывается с аргументом (или после указанного диалогового окна), он откроет файл в evince и предоставит вам диалоговое окно со списком слов.

Другими словами, скопируйте следующее в текстовый файл, называемый evince-word-count.sh или что-то еще, сохраните его где-нибудь на своем пути (например, ~/bin/ ), сделайте его исполняемым (либо через правый щелчок Nautilus и свойства, либо с помощью chmod +x ~/bin/evince-word-count.sh ),

#!/bin/bash
if [ "$#" -gt "0" ] ; then
    filename=""
else
    filename="$(zenity --file-selection)"
fi
evince "$filename" &
zenity --info --text "This PDF has $(pdftotext "$filename" - | tr -d '.' | wc -w) words"
exit 0

Теперь, щелкните правой кнопкой мыши на некоторых файлах PDF в nautilus, выберите «Открыть с ...», а затем откройте его с помощью evince-word-count.sh. Теперь, когда вы открываете PDF-файл, он будет открыт в evince и даст вам количество слов.

    
ответ дан frabjous 08.11.2010 в 23:14
4

Я не считаю, что это возможно (это технически возможно, но не реализовано).

Вы должны помнить, что Evince является документом viewer , а количество слов - это функция, обычно требуемая в редакторе (да, я знаю, что это не всегда так ).

Вам может понравиться связаться с разработчиками Evince и спросить, не заинтересованы ли они в реализации этой функции.     

ответ дан 8128 08.11.2010 в 20:16