直接将.aspx文件转换为.pdf文件

11
我正在处理一个需要输出HTML (.aspx)和PDF格式报告的项目。是否有可用的解决方案可以将.aspx页面的输出馈送给PDF生成工具呢?全面支持HTML和CSS将是理想的选择。
谢谢!

1
感谢迄今为止的回答!我应该澄清一件事...网络应用程序是通过Web表单和SSL证书进行保护的。希望这不会成为问题。根据我所读的,ABCpdf和wkhtmltopdf似乎是最佳选择。ABCpdf似乎与.NET更好地集成,而wkhtmltopdf可能会更好地呈现复杂的CSS,因为它使用WebKit渲染引擎。CSS可能会比较复杂,并且未来可能会添加图像(图表等)。谢谢! - JCdowney
8个回答

12

wkhtmltopdf 可以完成这个任务.... 使用方法:

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

就是这样了。您可以访问任何网页...甚至是.aspx页面。CSS得到了比其他任何实用工具更好的支持,因为它使用Webkit HTML渲染引擎(Safari,Chrome)。享受吧。

有一个单独的.exe文件(7 MB),可以通过使用Process.Start在.Net中简单地使用。确保将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工具。


运行非常顺畅,即使在我的网络托管上也能正常工作(网络应用程序生成PDF发票)。 - Marek
我发现它会破坏一些页面 - 例如,请检查这个链接:http://jsfiddle.net/BgNPC/8/ - Adam Oren


3

我曾经使用过 HTMLDoc,它可以将带有基本格式的 HTML 表格、图片等转换成不错的 PDF 报告。还有一个 开源版本

iTextSharp 可以在基本层面上渲染 html。

我发现,通过简单的 HTML 渲染器编写PDF功能是很容易的,然后再后期添加PDF报告渲染器。如果您将表示层与数据和业务逻辑分离,这应该非常简单。

我当时使用了 PDFlib,但是无论是 iTextSharp 还是 PDFlib 都是用于从数据源程序化创建 PDF 的强大库。

我还没有看到完美的 HTML 转 PDF 渲染器,所以我建议采取两阶段方法。您还可以查看此问题以获取其他选项。


@Jle的建议使用wkhtmltopdf似乎是替代htmldoc更好的选择。 - Mark Nold

0

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

http://www.asppdf.com


0

ActivePDF WebGrabber 是一个非常棒的产品,一旦你正确配置了所有内容,它就能够发挥出强大的作用。虽然价格较高,但它对 HTML 和 CSS 的支持非常出色。


0
我们使用Alt-Soft XML2PDF产品来实现这个目的。它可以使用XSL-FO标记语言将任何XML文件转换为PDF。
因此,如果您的ASPX页面与XHTML兼容,Xml2PDF将轻松愉快地将其转换为PDF。以下是一个示例页面 - 包括可下载的ASP.NET示例 - 显示了如何工作:http://www.alt-soft.com/products_HTML2PDF.aspx 它不是免费的,但其许可证价格非常值得!Marc

0

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

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

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


我无法从任何服务器下载它。 - Sana.91
我该如何下载它? - Sana.91

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接