如何将数据打印为pdf格式

本文关键字:pdf 格式 打印 数据 | 更新日期: 2023-09-27 18:23:57

在我的申请中,学生将填写所有详细信息,然后单击提交按钮。

它将在studentDetails.aspx页面中显示学生的所有详细信息。

在studentDetails.aspx页面中,有一个"打印"按钮。

我想要的是,当学生点击这个打印按钮时,它应该以PDF文件格式显示学生的详细信息,准备打印。

我试过以下几种,有人能帮我摆脱困境吗?"

protected void Button1_Click(object sender, EventArgs e)
    {
        Uri strurl = Request.Url;
        string url = strurl.ToString();
    string filename = "Test";
    HtmlToPdf(url, filename);
}
public static bool HtmlToPdf(string Url, string outputFilename)
{
    string filename = ConfigurationManager.AppSettings["ExportFilePath"] + "''" + outputFilename + ".pdf";

    Process p = new System.Diagnostics.Process();
    p.StartInfo.Arguments = Url + " " + filename;
    p.StartInfo.UseShellExecute = false;
    p.StartInfo.CreateNoWindow = true;
    p.StartInfo.FileName = HttpContext.Current.Server.MapPath(@"C:'Users'$$'Documents'Visual Studio 2008'Projects'santhu") + "wkhtmltopdf.exe";
    p.StartInfo.RedirectStandardOutput = true;
    p.StartInfo.RedirectStandardError = true;
    p.StartInfo.RedirectStandardInput = true;
    p.Start();
    string output = p.StandardOutput.ReadToEnd();
    p.WaitForExit(60000);
    int returnCode = p.ExitCode;
    p.Close();
    return (returnCode == 0 || returnCode == 2);
}
}

如何将数据打印为pdf格式

您将希望利用iTextSharp库之类的东西来实现这一点。这是一个直接的解决方案。考虑以下代码块:

using (Document doc = new Document(PageSize.A4, 0, 0, 0, 0))
{
    using (FileStream stream = new FileStream(targetPath, FileMode.Create))
    {
        PdfWriter.GetInstance(doc, stream);
        doc.Open();
        var font = FontFactory.GetFont("Courier", 10);
        var paragraph = new Paragraph(sb.ToString(), font);
        doc.Add(paragraph);
        doc.Close();
    }
}

这需要一个文本文件并将其转换为PDF。现在很明显,你需要根据自己的需要对其进行修改,但你会发现它有多简单。此外,该库还为PDF的所有概念提供了类,而不仅仅是段落。