仅当有足够的空间存放下一个数据时,才在fo:table中添加空行或空格

时间:2013-09-09 07:26:15

标签: xml xslt xsl-fo

我有这样的事情:

<fo:table>
    <fo:table-body>
        <xsl:for-each select ="1 to 1000">
            <fo:table-row height="10mm" line-height="10mm">
                <fo:table-cell>    
                    <fo:block>
                        <xsl:value-of select="."/>
                    </fo:block>
                </fo:table-cell>
            </fo:table-row>
        </xsl:for-each>
    </fo:table-body>
</fo:table>

我需要在每行后面的值中插入空行,如果当前页面上有足够的空间用于下一行的值,则只需要插入值。所以它看起来像:

---------- page 1 -------------
1

2

3

4

5
---------- page 2 --------------
6

7

8

9

10
--------------------------------

如果我只是添加空fo:table-row,它看起来像:

---------- page 1 -------------
1

2

3

4

5
---------- page 2 --------------

6

7

8

9

---------- page 3 --------------
10

1 个答案:

答案 0 :(得分:0)

作为一种变通方法,您可以在表格的最后一行之外的每一行添加“padding-bottom”。您可能最终将示例的第5行移动到第二页,但您至少可以确保页面顶部没有额外的空间。