[英]Print aspx page to PDF on button click, but print PDF serverside
我有一個顯示在網頁上的報告,並且用戶已將該網頁打印為PDF。 我需要的是,當用戶單擊按鈕時,網頁可以自動打印為PDF(保存)到網站服務器上的某個位置。
iTextSharp似乎並不能讓我完全按照打印到PDF時的樣子保存PDF(保留CSS等),還存在一些許可問題。 PrinceXML看起來不錯,但是太貴了。
有沒有辦法打開新的aspx頁面,然后將其打印到PDF服務器端?
您可以使用內置的RLDC報告。 它是免費的,具有漂亮的設計和功能,並允許您打印到PDF。 您無需保存PDF文件,而不必擔心管理和刪除它,只需將其打印到流中並使用該流進行下載。
像這樣:
Warning[] warnings;
string[] streamids;
string mimeType;
string encoding;
string extension;
byte[] bytes = reportViewer.LocalReport.Render("PDF", null, out mimeType, out encoding,
out extension, out streamids, out warnings);
然后將bytes
寫入下載流。
Response.Buffer = true;
Response.Clear();
Response.ContentType = mimeType;
Response.AddHeader("content-disposition", "attachment; filename= filename" + "." + extension);
Response.OutputStream.Write(bytes, 0, bytes.Length);
Response.Flush();
Response.End();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.