3

我知道有几个工具/库可以做到这一点,但我想知道这是否可以通过将文件作为文本文件打开并查找关键字来实现。

4

3 回答 3

3

看看这个:http ://www.freevbcode.com/ShowCode.asp?ID=8153
编辑:不行,可能太旧了
发现这个:

public static int GetNoOfPagesPDF(string FileName)
        {
            int result = 0;
            FileStream fs = new FileStream(FileName, FileMode.Open, FileAccess.Read);
            StreamReader r = new StreamReader(fs);
            string pdfText = r.ReadToEnd();
            System.Text.RegularExpressions.Regex regx = new Regex(@"/Type\s*/Page[^s]");
            System.Text.RegularExpressions.MatchCollection matches = regx.Matches(pdfText);
            result = matches.Count;
            return result;
        }

ps:经过测试!有用。见这里 来源

于 2010-10-05T06:52:53.503 回答
1

[编辑:基于编辑的问题]

可以通过将其作为文本文件读取并进行一些最少的解析来实现。

如果您自己阅读 pdf,则需要进行解析。PDF 中的每一页都由一个页面对象表示。

以下提供了对页面简写的 pdf 规范的理解以及 pdf 规范的链接。

于 2010-10-05T06:53:07.170 回答
-1

xpdf 实用程序包(在 debian 中称为 xpdf-utils)包括一个名为 pdfinfo 的应用程序。它将打印出文件中的页数以及其他数据。

http://www.linuxquestions.org/questions/programming-9/how-to-find-pdf-page-count-699113/

于 2010-10-05T06:50:13.123 回答