我之前曾在这里询问过如何使用iTextSharp将HTML和CSS样式表渲染为PDF,但似乎不可能实现...所以我想我需要尝试其他方案。
有没有一个开源的.NET/C#库可以接受HTML和CSS作为输入并正确呈现出来?我必须强调...这个库必须免费,最好是一个相对自由的许可证。我在这方面几乎没有预算可用。
我之前曾在这里询问过如何使用iTextSharp将HTML和CSS样式表渲染为PDF,但似乎不可能实现...所以我想我需要尝试其他方案。
有没有一个开源的.NET/C#库可以接受HTML和CSS作为输入并正确呈现出来?我必须强调...这个库必须免费,最好是一个相对自由的许可证。我在这方面几乎没有预算可用。
这个命令行工具十分实用!https://wkhtmltopdf.org/
它使用的是WebKit渲染引擎(Safari和KDE中也有应用),我在一些复杂的网站上测试了它,发现它比其他任何工具都要好。
我一直只在命令行中使用它而不是作为一个库,但HTMLDOC给我带来了很好的结果,并且它至少可以处理一些CSS(我无法轻易地看到有多少)。
下面是一个样例命令行:
htmldoc --webpage -t pdf --size letter --fontsize 10pt index.html > index.pdf
虽然它不是开源的,但你至少可以获得一个免费的个人使用许可证来使用Prince,它确实做得非常好。
尝试使用webSupergoo的ABCpdf。它是一种商业解决方案,不是开源的,但标准版可以免费获得,并且可以满足您的要求。
ABCpdf完全支持HTML和CSS、实时表单和实时链接。它还在渲染时使用Microsoft XML Core Services (MSXML),因此结果应该与Internet Explorer中看到的完全相同。
在线演示可用于测试HTML到PDF的渲染,无需安装任何软件。请参见:http://www.abcpdfeditor.com/
以下C#代码示例显示了如何呈现单个页面的HTML文档。
Doc theDoc = new Doc();
theDoc.AddImageUrl("http://www.example.com/");
theDoc.Save("htmlimport.pdf");
theDoc.Clear();