0
我有Stream对象,它包含我想要在PDF文档中显示的数据。从System.IO.Stream对象创建pdf文档?
如何创建并保存该Stream对象的PDF文档? (Stream对象使用MigraDoc工具创建)
我有Stream对象,它包含我想要在PDF文档中显示的数据。从System.IO.Stream对象创建pdf文档?
如何创建并保存该Stream对象的PDF文档? (Stream对象使用MigraDoc工具创建)
我想你可能会感到困惑。 MigraDoc创建Pdf文档。所以如果你有一个来自MigraDoc的流(来自它的PdfDocument对象),我猜想将流保存为磁盘为“document.pdf”是最好的选择。
见乔恩长柄水杓回答这个位置:
How do I save a stream to a file in C#?
记住一个流只是二进制数据。所以当你想要读写数据时,你可以使用System.IO来读取或写入数据流到某个位置,无论是磁盘,内存还是网络传输。
我想借此看看MigraDoc样本更多信息:
http://www.pdfsharp.net/wiki/MigraDocSamples.ashx
如果你正在写这一个HTTP输出,那么我会做如下:
byte[] buffer = new byte[8192];
pdfStream.Seek(0, SeekOrigin.Begin);
Response.ClearContent();
Response.ClearHeaders();
Response.BufferOutput = true;
Response.ContentType = "application/pdf";
int bytesRead = pdfStream.Read(buffer, 0, 8192);
while(bytesRead > 0)
{
byte[] buffer2 = new byte[bytesRead];
System.Buffer.BlockCopy(buffer, 0, buffer2, 0, bytesRead);
Response.BinaryWrite(buffer2);
Response.Flush();
bytesRead = pdfStream.Read(buffer, 0, 8192);
}
Response.End();
我有从MicroDoc创建的流,我将它保存到数据库,然后我检索它,然后我想根据用户请求将其保存为PDF – pramod 2011-06-01 08:57:39
它是一个Web请求或程序接口请求? – Richard 2011-06-01 16:06:06