使用XSL-FO在.NET中生成PDF

我需要使用XSL-FO在.NET中生成pdf。 这样做并不缺少图书馆。 您会建议我使用哪个库?为什么?

这是一个老问题,我知道,但迄今为止的答案都没有实际解决OP问题。 她询问了使用XSL-FO的选项,而不是“如何使用代码生成PDF?”。

关于实际问题的主要非商业答案是:

Apache.org项目的FOP

格式化对象处理器。 它需要符合XSL-FO标准的xsl代码和xml,并根据XSL-FO规范生成PDF文件。 还有其他几种商业选择:

  • Ibex PDF Creator
  • AntennaHouse
  • RenderX

如果你正在寻找一个工作的开源选项,FOP就是它。 FOP本身就是一个Java库,但它已经通过JF(在我所知道的那里有自己的问题)在nFOP项目中移植到.NET。

我过去使用的是Ibex PDF生成器 。 我被投入了一个已经获得许可的项目,所以我别无选择。 起初我认为这是cumboersome,但最终我习惯了它是如何工作的。

我建议你也使用一些好的XML / XSL编辑器来测试XSL / XPath。 XML Copy Editor是一个很好的免费开源编辑器 。

几年前我研究过选项。 以下是候选名单:iTextSharp,SharpPDF,Report.NET,NFop和Siberix Report Writer。 最终我选择了Siberix,但我现在认为iTextSharp会是更好的选择。 如果它有用,你可以在这里找到更多。

http://fonet.codeplex.com/

FO.NET是你的图书馆

好吧,我在大约2年前使用了iText(开源)几次,但我不推荐这个。 主要原因是缺乏文档,我真的不喜欢API,它只是觉得过时在调用函数之前设置全局变量。

你需要使用XSL-FO的原因是什么? 我还使用ABC-pdf(商业),它允许用户将HTML页面(包括样式表)转换为pdf文档,或者您可以使用简单的文档API。