use*_*103 2 c# pdf bytearray reporting-services ssrs-2008
我的任务是获取pdf内容的页数.我利用SSRS工具生成pdf字节数组.一旦我得到字节数组,我需要获得生成的这个字节数组的页数.C#是使用的编程语言.
目前我正在使用生成的pdf字节数组物理创建pdf文件.后来我在内存中打开pdf文件并获取页数.最后,我将删除为临时目的创建的文件.
有没有办法在不创建物理文件的情况下获取生成的pdf字节数组的页数?或者我可以在内存中创建一个pdf文件对象吗?
PDF创建需要额外的安全权限,我们不会将pdf文件用于任何其他目的.
我使用下面的代码修复了这个问题.
谢谢你的帮助.
int pageCount;
MemoryStream stream = new MemoryStream(pdfContent);
using (var r = new StreamReader(stream))
{
string pdfText = r.ReadToEnd();
System.Text.RegularExpressions.Regex regx = new Regex(@"/Type\s*/Page[^s]");
System.Text.RegularExpressions.MatchCollection matches = regx.Matches(pdfText);
pageCount = matches.Count;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2673 次 |
最近记录: |