有什么方法可以获得我在 Evince(Ubuntu 的默认 PDF 查看器)中查看的 PDF 文档的字数?我能够将文档转换为文本文件并从终端获取字数,但我非常希望能够快速获取它们而无需使用终端。是否有任何插件可以做到这一点,或者它是否已经内置而我只是想念它?
PS 我不想改变我的查看器,因为 Evince 是 Ubuntu 中的默认 PDF 查看器,我很想尽可能多地使用默认应用程序,因为其中包括 Evince 在内的很多应用程序都非常好。
Sid*_*Sid 47
您可以通过命令行执行此操作:
pdftotext filename.pdf - | tr -d '.' | wc -w
Run Code Online (Sandbox Code Playgroud)
fra*_*ous 12
一个需要zenity和 evince的快速 bash 脚本怎么样。当不带参数调用时,它会给你一个对话框,你可以选择一个文件。当使用参数(或在上述对话框之后)调用时,它会在 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
Run Code Online (Sandbox Code Playgroud)
现在,在 nautilus 中右键单击某些 PDF,选择“打开方式...”,然后使用 evince-word-count.sh 打开它。现在,当您打开 PDF 时,它会以 evince 形式打开,并为您提供字数统计。

小智 11
Olaf Leidinger 在 Evince 邮件列表上的回复:
我认为这样的功能更适合文档编辑器,因为他们作为普通查看器拥有更多关于文档的信息,并且计算单词是微不足道的。以 PDF 文件为例。您看到的文本实际上可能是某种矢量图形形状。即使文本包含在 PDF 文件中,您看到的那些词也可能由多个“在 (y,x) 位置绘制文本”命令组成——例如,在变音或行尾的情况下。所以一个词可能算作多个词。因此,我认为可能很难可靠地实现这样的功能。看看 pdftotext 看看我的意思。
| 归档时间: |
|
| 查看次数: |
23750 次 |
| 最近记录: |