2009-10-11 71 views
1

我想从二进制数据创建一个PDF文件。我环顾四周,通过从数据库中提取数据来找到使用iTextSharp的示例。使用itextSharp从二进制数据创建pdf文件

但几乎所有人都显示如何在浏览器中显示。我想创建一个像 pdffromDB.pdf,而不是显示一个文件,如下图所示

doc.Close(); 
Response.BinaryWrite(MemStream.GetBuffer()); 
Response.End(); 
MemStream.Close(); 

我真的很感激,如果你能告诉我一个例子,让我创造一个真正的PDF文件。

感谢

回答

1

假设你MemStream已经包含了所有字节组成一个有效的PDF文件,你应该能够通过Response.BinaryWrite之前添加以下语句说服访问者的浏览器提示将其保存为一个文件:

Response.AddHeader("Content-Disposition", "attachment; filename=Whatever.pdf") 

顺便说一句,以后到Response.End一般的代码不执行:你MemStream仍然会由于走出去的范围关闭,在这种情况下配置就好了,但一般而言,您应该对待Response.End与Exit Sub相同,并相应地编码,例如

Using ms As New IO.MemoryStream 
    ... 
    Response.End() 
End Using