直接将.aspx转换为.pdf
我正在处理的一个项目需要我构build一个以HTML(.aspx)和PDF格式输出的报表。 有没有可用的解决scheme,可以将.aspx页面的输出提供给PDF生成工具? 完全支持HTML和CSS将是理想的。
谢谢!
wkhtmltopdf会做到这一点….用法:
wkhtmltopdf http://www.google.com google.pdf
这就对了。 你可以去任何网页…甚至aspx。 因为它使用webkit html渲染引擎(Safari,Chrome),所以css比任何其他实用程序都支持得更好。 请享用
有一个.exe(7 MB),可以使用从.Net只使用Process.Start请确保您将exe复制到您的项目目录或您必须指定完整的path。 例如:
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工具,我见过。
iTextSharp可以做HTML到PDF,但只有基本的HTML和CSS不完全支持。
一些关于发送HTML到iTextSharp的文章:
http://somewebguy.wordpress.com/2009/05/08/itextsharp-simplify-your-html-to-pdf-creation/
http://aspdotnetcodebook.blogspot.com/2008/07/how-to-export-content-of-gridview-to.html
http://geekswithblogs.net/casualjim/archive/2005/11/13/59943.aspx#393262
我过去使用过HTMLDoc ,把HTML表格,图片等基础格式转换成体面的PDF报告,做得很好。 似乎也有一个开源的版本 。
iTextSharp在基本级别上呈现html。
我发现在一个简单的HTML渲染器中进行黑客攻击可以让我立即提供PDFfunction,然后我不得不在稍后的时间内对PDF报表渲染器进行备份。 如果将表示层与数据和业务逻辑分开,这应该非常简单。
然后,我使用PDFlib,但iTextSharp和PDFlib都是非常棒的库,用于从数据源编程创buildPDF。
我还没有看到一个完美的HTML 2 PDF渲染器,所以我打算两个阶段的方法。 你可能也想看看这个问题的其他选项。
AspPDF是一个用于dynamic创build,读取和修改可移植文档格式(PDF)文件的ActiveX服务器组件。
ActivePDF WebGrabber是一个很好的产品,只要你有一切正确的configuration。 这是昂贵的,但它有HTML和CSS的真棒支持。
为此,我们使用了Alt-Soft XML2PDF产品。 它可以使用XSL-FO标记语言将任何XML文件转换为PDF。
所以,如果你的ASPX页面是XHTML兼容的,Xml2PDF会将这些页面转换成PDF相当愉快和容易。 下面是一个示例页面,其中包含一个可下载的ASP.NET示例,它显示了这个工作原理: http : //www.alt-soft.com/products_HTML2PDF.aspx
这不是免费的,但很值得的牌照价格!
渣子
这是将ASPX页面转换为PDF的最佳控制:
http://www.essentialobjects.com/Products/EOPdf/ASPXToPDF.aspx
这是一个ASP.NET服务器控件,你可以直接进入你的页面。 它会自动处理ASP.NET身份validation和会话。 所以即使页面请求login并使用会话数据,也可以转换当前页面。