计算PDF文件中的页面

时间:2010-10-05 06:45:46

标签: pdf pdf-extraction

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

3 个答案:

答案 0 :(得分: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:经过测试!它有效。see here source

答案 1 :(得分:1)

[编辑:根据编辑过的问题]

可以通过将其作为文本文件和一些最小的解析来阅读。

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

以下内容提供了对页面的pdf规范和pdf规范链接的理解。

答案 2 :(得分:-1)

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

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