2013-05-07 141 views
1

我有一個.aspx頁面,其中有一個面板和一些控件以及一個gridview。我正在嘗試打印該面板,但下載的PDF文件爲空。我不知道爲什麼,有人能解釋我嗎?使用itextsharp導出到pdf

下面的代碼我試圖

Response.ContentType = "application/pdf"; 
Response.AddHeader("content-disposition", "attachment;filename=UserDetails.pdf"); 
Response.Cache.SetCacheability(HttpCacheability.NoCache); 
StringWriter sw = new StringWriter(); 
HtmlTextWriter hw = new HtmlTextWriter(sw); 
this.pnlprint.RenderControl(hw); 
StringReader sr = new StringReader(sw.ToString()); 
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f); 
HTMLWorker htmlparser = new HTMLWorker(pdfDoc); 
PdfWriter.GetInstance(pdfDoc, Response.OutputStream); 
pdfDoc.Open(); 
htmlparser.Parse(sr); 
pdfDoc.Close(); 
Response.Write(pdfDoc); 
Response.End(); 

回答

0

試着改變你的:

Response.Write(pdfDoc); 

到:

Response.BinaryWrite(pdfDoc.ToArray());