XSL-FO两个单独的脚注块(XEP)

时间:2018-11-11 14:39:41

标签: xslt-2.0 xsl-fo

XSL-FO(XEP),XSLT 2.0

在学术版文本中,我们经常需要两套脚注,一组使用字母(a,b,c等),另一组使用数字(1、2、3等)。

使用xsl:number内的fo:footnote/fo:inline在文本中内联相对脚注字母和数字可以很好地工作。

现在,我需要将脚注内容分成文本底部的两个单独的块,以使该示例看起来像这样:Footnotes in two blocks

但是我无法用fo:footnote/fo:footnote-body来创建两个单独的块的方法,首先是带字母的注释,其次是带编号的注释。

提前感谢任何想法。

1 个答案:

答案 0 :(得分:1)

我认为您显示的结构根本不可能,或者至少不能使用自定义代码来操纵结果区域树(中间格式也称为XEPOUT)。

1)您以内联方式显示的第一组“脚注”。我认为这些程序可以运行一,两行或三行。仅凭这一点,我可能看不到如何正确构建,除非有一些技巧。通过用fo:inline标记围绕每个脚注并将其拉到页脚,可以实现这种结构。换句话说,不要让它们成为脚注。

由于它们在文档中是分开的,因此您需要诸如在页面上出现的标记A,标记B ...和页脚来拉动所有标记但仅在该页面上的范围(第一个)从没有结转的页面开始)。现在,如果这些标记不存在,它将不会有任何作用。因此,例如,如果您知道自己永远不会超过F个标记,然后在页脚中将A拖到F,则可以这样做。

2)第二部分只是脚注

3)但是,这两个区域将不按顺序排列,因为带有A,B ...的页脚将低于编号。因此,您必须开发自定义XSL才能翻转这些区域。

最后,由于无法动态调整页脚区域的大小,因此不清楚即使这样也可以很好地解决问题,尤其是A,B型脚注可以是一行或六行。只有在已知固定空间可以工作的情况下,您才能这样做。

相关问题