我想将一些xml转换成像pdf文档这样的杂志。很像LaTeX允许你做的事情,但是我无法找到关于这个主题的任何新书或在线教程。是否值得投资使用这项技术?
另外,我查看了Apache XSL-FO项目,他们的上一次发布是在2008年8月。
P.S。商业套餐不是一种选择:(
答案 0 :(得分:7)
我认为XSL-FO处理器可用性较低的唯一原因是它的格式化选项相当大而且非常复杂。
由于所涉及的复杂程度,没有人愿意出汗这么多并让它开源。我听说XSL-FO有很多很酷的商用处理器。甚至Apache FOP也是一个很好的产生pdf的方法。
虽然我没有使用过LuaTex,但我发现XSL-FO很有趣。它也只使用XML来生成pdfs。如果你问我,我会说,它简单而有力。而且我也不希望它死... ..)
答案 1 :(得分:6)
除了FOP之外,目前还没有免费的XSL-FO格式化程序和其他一些(IMHO)不能真正使用的格式化程序。但这并不意味着,XSL-FO已经死了,它在技术文档中被大量使用。
创建功能齐全,符合标准的XSL-FO格式化器非常困难,而FOP还没有。我猜他们被标准的纯粹复杂性所困扰。
我的公司目前正在创建另一个XSL-FO格式化程序,重点是基于LuaTeX的高排版输出,所以我知道这方面的一点点。尚未确定这是否是开源的。 (对不起,我无法帮助你)。
所以我的答案是:使用Apache FOP。即使最后一次更改是在一段时间之前,它在这一点上也很有用。 XSL-FO远未消亡。如果你能负担得起,可以使用一个不错的XML编辑器(例如OxygenXML)进行编辑,这样可以使编辑XSL样式表变得有趣。 (通过提及这个,我没有得到任何金钱。)
答案 2 :(得分:2)
如果您是这个领域的新手,您还可以使用视觉设计工具。我发现Ecrion的XSL-FO Designer对熟悉XSLT和XSL-FO的程序员以及需要对模板进行更改的老太太都有好处(我们正在部署基于XSL-FO的桌面解决方案替换旧的专有解决方案,女士们可以对文档模板进行小的更改:))。
FOP确实不再维护,但商业供应商在提供更快,更实惠的解决方案方面做得很好,每一个版本的功能都在不断增加(XSL-FO specifications的2.0草案现已进入作品!)。
答案 3 :(得分:2)
在开发XSL-FO处理器时,您必须考虑格式要求的复杂程度以及任何处理器满足您需求的程度。 FOP当然不具备您在Antenna House产品中可以找到的所有功能,但可能会为您的基本杂志布局提供大部分功能。
至于FO的复杂性,它肯定涵盖了广泛的格式化需求,但基础知识并不是很难通过一些练习。如果您对XSL有一定的工作知识以及任何CSS经验,那么您应该轻松获取FO基础知识。我通过谷歌搜索,从简单到复杂的阅读和建设,已经掌握了我所知道的。
答案 4 :(得分:1)
Apache FOP得到了维护,并且最近才达到1.0版但不要被愚弄这不是第一个版本,因为这是多年工作的高潮。几年前有一段时间,看起来这个项目已经死了,但他们当时正在进行重大改变。从那时起,定期发布版本,每个版本都提高了兼容性和功能。
此外,如果你确实遇到问题(我的意思是渲染器的错误或技术问题而不是关于FO的问题)我发现FOP团队非常有帮助并且总是给出快速响应。
答案 5 :(得分:1)
星期六,2013-11-02,Liam R. E. Quin wrote: “我们已经关闭了工作组,因为没有足够的人参与”,W3C XML活动主管,关于XSL-FO 2.0连续性的失败。
工作草案的最新更新于2012年1月,现已确认: W3C停止开发XSL-2 。
为什么呢?它将被CSS3-page替换,请参阅Use of XSL-FO, CSS3 instead of CSS2 to create Paginated documents like PDF?
PS:开源项目早期染色。例如,Apache XSL-FO project最后一个版本是在2008年8月,然后在2012年(感谢@mzjn进行更新!),(FOP v1.1)~100个固定错误。编辑:2015年6月 XSL-FO 2.0 仍然是“W3C工作草案17”(2012年1月)。但是我们需要纠正关于Apache的PS(感谢@mzjn!),它被发布为Apache FOP 2.0。此外,还保留了3B2等软件。
答案 6 :(得分:1)
不,既没有死也没有利基。
2010年的问题指向上一个FOP版本,即2008年。截至2018年,FOP每年在2015年至2018年之间发布一个版本(请参阅https://xmlgraphics.apache.org/fop/news.html)。如果您还要研究商业格式化程序,Antenna House大约每45天发布一次维护版本(请参见https://www.antennahouse.com/antenna1/news-events/)。
https://www.antennahouse.com/antenna1/formatter/当前具有指向汽车手册样本,年度报告和税表的链接。德国的火车票是使用XSL-FO生成的。有时我会惊讶地发现它的用途如此广泛。