我的ASP.Net导出到PDF格式。以下是我的代码。请帮忙。
Response.Clear();
Response.Buffer = true;
Response.Charset = Encoding.UTF8.HeaderName;
Response.ContentEncoding = Encoding.UTF8;
Response.Write(string.Format("<meta http-equiv=Content-Type content=text/html;charset={0}>", Encoding.UTF8.HeaderName));
Response.ContentType = "application/pdf";
Response.Headers.Add("Content-disposition", "attachment; filename=pdffilename.pdf");
StringBuilder sb = new StringBuilder();
sb.Append("MIME-Version: 1.0\r\n");
sb.Append("X-Document-Type: Worksheet\r\n");
sb.Append("Content-Type: multipart/related; boundary=\"----=mtrSystem\"\r\n\r\n\r\n");
sb.Append("------=mtrSystem\r\n");
sb.Append("Content-Type: text/html; charset=\"utf-8\"\r\n");
sb.Append("<html xmlns:o=\"urn:schemas-microsoft-com:office:office\"\r\n");
sb.Append("xmlns:x=\"urn:schemas-microsoft-com:office:pdf\">\r\n\r\n\r\n");
sb.Append("------=mtrSystem\r\n");
sb.Append("Content-ID: baiduimg\r\n");
sb.Append("Content-Transfer-Encoding: base64\r\n");
sb.Append("Content-Type: image/png\r\n\r\n");
我可以用这种方式将我的ASP.Net页面导出为PDF吗?
答案 0 :(得分:2)
Html-to-pdf.net允许将html转换为pdf。要从asp.net页面获取html,请使用以下代码:
StringWriter sw = new StringWriter();
Server.Execute("PageToConvert.aspx", sw);
string htmlCodeToConvert = sw.GetStringBuilder().ToString();
然后将html传递给pdf生成器:
public byte[] GetPdfBytesFromHtmlString (string htmlString)
然后,您可以将字节保存到响应中以发送到客户端,或者将其作为本地文件保存在服务器上。
修改强>
要记住一些事情,html-to-pdf确实cost money,但对于我的上一个项目,这是一个合理的费用。您可以使用试用版来确定您需要的内容。
答案 1 :(得分:0)
我不完全确定你要做什么,但一般来说我强烈建议PDFSharp用于在代码中创建PDF文档......