现代文档模板和渲染

Modern document templating and rendering

我希望了解文档模板化和批处理 rendering/generation PDF 和 Word 等格式的现代方法。是否有基于 XSL-FO 的产品的替代品,例如CSS 基础产品?有比 XSL-FO 更 better/emerging 的标准吗?

我有几个解决方案,利用 XSL-FO 标准指定文档模板,然后使用渲染引擎生成 PDF、MS Word 等格式的文档。这些包括 Apache FOP、Ecrion、RenderX 和 Antenna房子。我们特别喜欢 Ecrion 产品,因为它提供了一种创建模板的良好视觉(业务用户友好)方式。

我们渴望了解替代方案 - 现代、利用当前标准、允许从模板批量渲染,并支持在类似 Office 的环境中以用户友好的方式定义模板。

CSS 呈现是一个有趣的发展,但是(据我在有限使用 CSS 时所见)它还没有 XSL-FO 强大。

其他回复者是准确的。 CSS离XSL FO所在的地方不近。

现在 -- 我是 RenderX 公司的一员,我拥有 Cloudformatter 环境并共同开发了诸如 Css-to-pdf 和 Nimbus 之类的东西。

作为一名经验丰富的标准制定者,我估计 CSS 还需要 8 年以上的时间。但谁知道呢? CSS 以多种方式移动,分页和格式只是它移动的一种(次要)方式。 HTML(5) 与 XML 相去甚远,试图跟踪所做的决定是非常可怕的。

你应该问的真正问题是你想做什么?使用 XSL FO 格式化文档已经在生产中(大约从 2002 年开始)并且每天都在对数百万非常复杂的页面进行格式化(比如您的 phone 账单或 401K 报表)。从 HTML 格式化页面是为了它自己的目的,但不是那些东西。决不。

XSL FO 将在未来 10 多年内用于完成它今天完美完成的任务。

pages 和 keeps 的概念以及许多其他对印刷格式完全有意义的东西都是陌生的或只在 CSS 中考虑过。更不用说大多数(如果不是全部)这些类型的软件包只生成 PDF ……好像这是世界上唯一可以打印的格式。嗯,还有很多,其中最重要的是法新社和其他人,如 PPML 和 Postscript。

我们也做过混合解决方案,比如http://www.cloudformatter.com/Nimbus。这是一个 XSL FO 设计器,但使用 HTML 和 CSS 来指定设计。您可以添加所有您想要的逻辑。您获得 XSL FO 的 XSL(它将扁平化的 CSS 转换为 FO 的 XSL 结构,并且不会尝试使用 CSS 进行格式化)。

所以。现代的? XSL FO 确实很现代。它是完成其设计任务的丰富标准。 HTML+CSS 是用来做其他事情的,部分被弯曲以完成另一项任务。你应该等待还是?这取决于您以及您认为您会得到什么以及风险是什么。

CSS & HTML 目前缺少几个对分页媒体非常重要的功能,例如:

  • 页面布局(第一页纵向,第二页横向等)
  • 脚注和标记等流对象
  • 页眉、页脚和侧边区域
  • widows/orphans控制
  • 连字符

因此,基于 public 标准的唯一替代方案是 XSL-FO。