有没有一种方法可以使用 XSL-FO 计算物理 (PDF) 页面上的标签?

Is there a way to count tags on a physical (PDF) page using XSL-FO?

场景如下。我有一个包含标签的 XML 文档。我想创建一个执行此操作的转换

<tag>content A</tag>           1. content A
<tag>content B</tag>  ---->    2. content B
<tag>content C</tag>           3. content C

但前提是标签内容出现在同一物理页面上。编号应在每个新页面上重新开始。有什么办法可以使用 XSL-FO 做到这一点吗?我知道使用 latex 完成这样的事情的唯一方法是 运行 latex 两次,使用临时文档来确定内容页面的位置。

据我所知(并经 Antenna House 技术支持团队确认),无法使用标准 XSL-FO 执行此操作。 Antenna House 提供 扩展,其中包括设置 axf:footnote-number-reset="page" 属性的能力,并且如评论中所建议的那样,RenderX 提供了一种通用机制,它可能用于此目的,但这两者都涉及特定于供应商的语言扩展。

这指出了 XSL-FO 中的许多缺点,这些缺点早就应该通过规范的 2.0 版解决。一个开发 XSL-FO 2.0 规范的 w3c 委员会成立,不久前解散了;我不知道为什么,因为我发现这个工具对于大量 class 文档到 PDF 的转换是必不可少的。