Java从模板创建PDF:ApacheFop vs?

Java从模板创建PDF:ApacheFop vs?,java,pdf,xsl-fo,apache-fop,Java,Pdf,Xsl Fo,Apache Fop,我必须从Java创建pdf,我想从模板创建它,而不是使用Java代码创建它,例如: document.addLabel("a pdf..") 我已经看到,我可以用ApacheFop实现这一点,它使用XSL-FO作为模板,有人知道XSL-FO的免费图形设计器吗?我只找到了这个 或者有一些替代ApacheFOP的方法吗? 谢谢大家! 不确定是否有免费的——Oxygen和XML spy远没有免费的选项。 你也可以使用iText,我相信它不再是免费的了,在谷歌附近有很多开源库。我个人一直都是手工完成X

我必须从Java创建pdf,我想从模板创建它,而不是使用Java代码创建它,例如:

document.addLabel("a pdf..")
我已经看到,我可以用ApacheFop实现这一点,它使用XSL-FO作为模板,有人知道XSL-FO的免费图形设计器吗?我只找到了这个

或者有一些替代ApacheFOP的方法吗?
谢谢大家!

不确定是否有免费的——Oxygen和XML spy远没有免费的选项。 你也可以使用iText,我相信它不再是免费的了,在谷歌附近有很多开源库。我个人一直都是手工完成XSL-FO的,所以不能对编辑器发表评论(如果没有很高的要求,那就很容易了)


根据您的使用情况和复杂性,还有其他选项,例如创建html,然后使用wkhtmltopdf或其他工具处理它。JODReports这是一个从ODT模板生成报告的解决方案,因此使用LibreOffice设计模板很容易。稍后,您可以将报告(格式为.odt或.doc)转换为PDF。

总有TeX(它有)。另请参见。

查看XDocReport,您可以从或创建模板,它提供了太完整的Java转换器(odt->pdf、odt xhtml、docx->pdf、docx->xhtml转换器):

  • 这些XDocReport完整Java转换器的优点是,您不需要安装OpenOffice/LibreOffice(如JODConverter)来管理转换。使用流模式工作的次数更多(无需生成临时文件)
  • 这些XDocReport完整Java转换器的缺点是,渲染器可能不如OpenOffice/LibreOffice好

有趣的事!如何从LibreOffice生成模板?有指南吗?解决了…它就像一个freemarker模板…太棒了!非常感谢!当一个完美的问题被关闭时是很悲哀的,因为它可能会“引发争论”。我对人们对这个问题的答案非常感兴趣,所以对我来说,这是非常有建设性的,即服务于一个有用的目的。