是否可以使用 MS Word 从控制台获取 pdf 的字数统计?

是否可以使用 MS Word 从控制台获取 pdf 的字数统计?

我经常使用 MS Word 打开.pdfs由 latex 生成的文件,这样我就可以快速准确地统计文档的字数。但如果我所做的只是打开文件并查看右下角 1 秒钟,似乎应该有更快的方法来实现这一点。

有没有办法可以通过命令行执行此操作?

答案1

我很快就编写了一个.vbs可以完成此任务的小脚本。虽然它确实使用了硬编码文件,但总比没有好。

  1. 编写一个名为的脚本wc.vbs,然后将其放入其中:

    Set word = CreateObject("Word.Application")
    word.Visible = False
    Set doc = word.Documents.Open("<replace with absolute path to your .docx/.pdf>")
    docWordCount = doc.Range.ComputeStatistics(wdStatisticWords)
    word.Quit
    Dim StdOut : Set StdOut = CreateObject("Scripting.FileSystemObject").GetStandardStream(1)
    WScript.Echo docWordCount & " words"
    
  2. 在您保存的目录中打开 powershellwc.vbs并运行cscript .\wc.vbs,您将得到字数统计:)


附言:此脚本不用于Words.Count计算单词数,因为我发现它给出的数字与我实际在 MS Word 中看到的数字非常不同。因此,我改用Range.ComputeStatistics(wdStatisticWords)此处提到的:https://support.microsoft.com/en-za/help/291447/word-count-appears-inaccurate-when-you-use-the-vba-words-property我不知道它为什么有效,因为我在发布这个答案的几分钟前才第一次学会如何运行 vbs 脚本。

相关内容