直接将.aspx转换为.pdf

时间:2009-08-03 01:58:03

标签: asp.net pdf pdf-generation

我正在处理的项目要求我构建一个以HTML(.aspx)和PDF格式输出的报表。是否有可用的解决方案允许我将.aspx页面的输出提供给PDF生成实用程序?完全支持HTML和CSS将是理想的。

谢谢!

8 个答案:

答案 0 :(得分:12)

wkhtmltopdf会这样做......使用:

wkhtmltopdf http://www.google.com google.pdf

就是这样。你可以去任何网页...甚至aspx。 css比任何其他实用程序都支持得更好,因为它使用webkit html呈现引擎(Safari,Chrome)。享受

只需使用Process.Start就可以从.Net中使用单个.exe(7 mb) 确保将exe复制到项目目录中,或者必须指定完整路径。 例如:

static void HtmlToPdf(string website,string destinationFile)
    {
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.FileName = "wkhtmltopdf.exe";
        startInfo.Arguments = website+" "+destinationFile;
        Process.Start(startInfo);
    }  

我认为支持SSL,但我认为双向SSL目前不会起作用。它是最好的单站HTML - >我见过的PDF工具。

答案 1 :(得分:3)

答案 2 :(得分:3)

我过去曾使用过HTMLDoc,它将HTML表格,图片等基本格式转换为体面的PDF报告做得很好。似乎也有open source version

iTextSharp将html呈现为基本级别。

我发现在一个简单的HTML渲染器中进行黑客攻击允许我立即提供PDF功能,然后我不得不重新装备PDF报告渲染器。如果您将表示层与数据和业务逻辑分开,这应该非常简单。

我使用了PDFlib,但iTextSharpPDFlib都是非常棒的库,可以从数据源以编程方式创建PDF。

我还没有看到完美的HTML 2 PDF渲染器,所以我计划采用两阶段方法。您可能还想查看this question其他选项。

答案 3 :(得分:0)

  

AspPDF是一个ActiveX服务器组件,用于动态创建,读取和修改可移植文档格式(PDF)文件。

http://www.asppdf.com

答案 4 :(得分:0)

一旦正确配置了所有内容,

ActivePDF WebGrabber就是一款出色的产品。它的成本很高,但它支持HTML和CSS。

答案 5 :(得分:0)

我们已将Alt-Soft XML2PDF产品用于此目的。它可以使用XSL-FO markup language将任何XML文件转换为PDF。

因此,如果您的ASPX页面与XHTML兼容,Xml2PDF将非常愉快和轻松地将这些页面转换为PDF。这是一个示例页面 - 包含可下载的ASP.NET示例 - 展示了它的工作原理:http://www.alt-soft.com/products_HTML2PDF.aspx

它不是免费的,但非常值得许可证价格!

马克

答案 6 :(得分:0)

http://aspdotnetcodebook.blogspot.com/2009/04/how-to-convert-web-page-to-pdf.html 向您展示如何使用iTextSharp

覆盖渲染并将内容更改为PDF

答案 7 :(得分:0)

这是将ASPX页面转换为PDF的最佳控件:

http://www.essentialobjects.com/Products/EOPdf/ASPXToPDF.aspx

这是一个ASP.NET服务器控件,您只需将其放入页面即可。它自动处理ASP.NET身份验证和会话。因此,即使页面请求登录并使用会话数据,您也可以转换当前页面。