如何将aspx页面转换为pdf文件?

时间:2011-07-15 05:05:09

标签: asp.net pdf

  

可能重复:
  Directly convert .aspx to .pdf

我已经制作了一个aspx页面并通过asp.net的图表控件生成了图表。 但我无法将此生成的图表生成为pdf文档。我想把我的aspx页面作为pdf文档。提前感谢您的支持。

2 个答案:

答案 0 :(得分:0)

当你尝试将aspx页面转换为pdf意味着转换你将把渲染的html转换为pdf所以这里有一个很好的链接可以帮助你,虽然我没试过但看起来很有希望

It's Here

注意:我假设您的页面不包含任何闪存图表。

答案 1 :(得分:-1)

使用itextsharp.dll我相信你可以使用这个dll在pdf中获取你的页面 很容易实现。

using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html;
using iTextSharp.text.html.simpleparser;

//这将是按钮的单击

  string attachment = "attachment; filename=" + filename+ ".pdf";
    Response.ClearContent();
    Response.AddHeader("content-disposition", attachment);
    Response.ContentType = "application/pdf";
    StringWriter stw = new StringWriter();
    HtmlTextWriter htextw = new HtmlTextWriter(stw);
    htextw.AddStyleAttribute("font-size", "7pt");
    htextw.AddStyleAttribute("color", "Black");

    Panel_Name.RenderControl(htextw);//Name of the Panel
    Document document = new Document();
    document = new Document(PageSize.A4, 5, 5, 15, 5);
    FontFactory.GetFont("Arial", 50, iTextSharp.text.BaseColor.BLUE);
    PdfWriter.GetInstance(document, Response.OutputStream);
    document.Open();

    StringReader str = new StringReader(stw.ToString());
    HTMLWorker htmlworker = new HTMLWorker(document);
    htmlworker.Parse(str);

    document.Close();
    Response.Write(document);

将其粘贴到页面上的某些位置

public override void VerifyRenderingInServerForm(Control control)
{


}