
Есть ли способ узнать количество слов в PDF-документе, который я просматриваю в Evince, стандартном просмотрщике PDF в Ubuntu? Я могу конвертировать документы в текстовые файлы и узнать количество слов из терминала, но мне бы хотелось иметь возможность быстро получить их без использования терминала. Есть ли какой-либо плагин, который может это сделать, или он уже встроен, а я просто его не вижу?
P.S. Я бы предпочел не менять программу просмотра, поскольку Evince является средством просмотра PDF-файлов по умолчанию в Ubuntu, и мне бы хотелось как можно больше делать с помощью приложений по умолчанию, поскольку многие из них, включая Evince, действительно хороши.
решение1
Это можно сделать через командную строку:
pdftotext filename.pdf - | tr -d '.' | wc -w
решение2
Как насчет быстрого bash-скрипта, требующегозенитностьи evince. При вызове без аргумента он выдаст вам диалоговое окно, в котором вы можете выбрать файл. При вызове с аргументом (или после указанного диалогового окна) он откроет файл в evince и выдаст вам диалоговое окно с количеством слов.
Другими словами, скопируйте следующее в текстовый файл, назовите его evince-word-count.sh
или как-то так, сохраните его где-нибудь по вашему пути (например, ~/bin/
), сделайте его исполняемым (либо с помощью щелчка правой кнопкой мыши и свойств Nautilus, либо с помощью chmod +x ~/bin/evince-word-count.sh
),
#!/bin/bash
if [ "$#" -gt "0" ] ; then
filename="$1"
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 и покажет вам количество слов.
решение3
Ответ Олафа Лейдингера в списке рассылки Evince:
Я думаю, что такая функция лучше подходит для редакторов документов, поскольку они имеют больше информации о документе как простой просмотрщик, а подсчет слов тривиален. Возьмем в качестве примера файл PDF. То, что вы видите как текст, на самом деле может быть какой-то векторной графической фигурой. Даже если текст содержится как таковой в файле PDF, те слова, которые вы видите, могут состоять из нескольких команд «нарисовать текст в позиции (y,x)» — например, в случае умляутов или конца строки. Таким образом, одно слово может считаться несколькими словами. Поэтому я думаю, что может быть сложно реализовать такую функцию надежно. Взгляните на pdftotext, чтобы понять, что я имею в виду.
решение4
Я не верю, что это возможно (точнее, технически это возможно, но не реализовано).
Вы должны помнить, что Evince — это документ.зрительи количество слов - это функция, которая обычно требуется вредактор(да, я знаю, что это не всегда так).
Вам может понравитьсясвяжитесь с разработчиками Evinceи спросите, заинтересованы ли они в реализации этой функции.