Dav*_*ave 1 c# memorystream itextsharp pdf-reader
谁能给我一个如何从MemoryStream获取PdfReader的示例吗?我可以看到PdfReader类有几个看起来很可能候选的方法(GetStreamBytes和GetStreamBytesRaw),但是这些似乎想要iText特定的流,我的只是常规的Byte []或MemoryStream。
这是使用C#和.net4
iTextSharp.text.pdf.PdfReader rdr = iTextSharp.text.pdf.PdfReader.GetStreamBytesRaw
Run Code Online (Sandbox Code Playgroud)
提前致谢。
小智 5
您可以从MemoryStream创建PdfReader,只要MemoryStream是有效的PDF对象即可。如果MemoryStream是有效的PDF对象,则启动PdfReader的一种方法是:
PdfReader _reader = new PdfReader((byte[])_memoryStream.ToArray());
Run Code Online (Sandbox Code Playgroud)
在下面的代码中,从.Net Resource初始化了PdfReader,当从Properties.Resources对象调用该资源时,它作为byte []返回,因此Resource和MemoryStream将相同的类型返回给PdfReader,即byte []。然后,我从PdfReader对象创建一个PdfStamper对象,并将MemoryStream用作PdfStamper的结果容器。
PdfReader _srcDoc = new PdfReader(Properties.Resources.Resource1);
MemoryStream _output = new MemoryStream();
PdfStamper _scratchDoc = new PdfStamper(_srcDoc, _output);
Run Code Online (Sandbox Code Playgroud)