我使用以下编码创建了一个C#应用程序,以获得pdf页数。
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;
}
但我无法在受保护的PDF中获取页数。如何在这种情况下获取页数。
答案 0 :(得分:0)
好吧,我不知道如何在没有第三方库的情况下找到页数,但iTextSharp
有PdfReader
类和getNumberOfPages
属性。
public int getNumberOfPages()
Gets the number of pages in the document.
Returns:
the number of pages in the document
这是一个例子;
string path = @"C:\Users\Soner\Desktop\eBook\C#\sample.pdf";
PdfReader reader = new PdfReader(path);
int number = reader.NumberOfPages;