XSL FO分页符取决于

时间:2016-01-13 11:53:30

标签: xslt xsl-fo

我必须修改一个xsl fo模板,我真的很新,希望任何人都可以帮助我完成这一步。 一个请求是关于孤立元素,取决于段落的行。 有像这样的列表项

Topic Text
    1. List entry (first)
    ...
    x. List entry (penultimate)
    y. List entry (last)

请求如下: 如果xy之间存在分页符,则如果列表条目在pdf输出中至少有3行,则最后一个列表条目必须仅在下一页上。如果x少于3行,y也必须在下一页上。 像这样:

widow = 2 if last list entry < 3 lines else widow = 1

使用Antenna House格式化板可以使用xsl吗? 你能给我一个提示,我可以在哪里找到更多的信息吗? 提前谢谢

基督教 编辑: 我玩了但我无法找到计算最后一个节点中的线的解决方案。所以我找不到检查最后一个节点的方法。

代码段:

    <xsl:otherwise>
        <fo:block background-color="{$color}">
            <xsl:if test="$myId != ''"><xsl:attribute name="id"><xsl:value-of select="$myId"/></xsl:attribute></xsl:if>
            <!-- full width for AnnexTemplate -->
            <xsl:if test="($parent = $AnnexTemplate)"><xsl:attribute name="start-indent">-<xsl:value-of select="$leftIndent"/>mm</xsl:attribute></xsl:if>
            <xsl:call-template name="insertParaAttributes"><xsl:with-param name="stylename" select="$style"/></xsl:call-template>
            <!-- text before table -->
            <xsl:if test="following-sibling::table"><xsl:attribute name="keep-with-next">10</xsl:attribute></xsl:if>
            <xsl:call-template name="dummy"/>
            <xsl:apply-templates/>
        </fo:block>
    </xsl:otherwise>

并附加输出。 Output 希望它有助于更​​好地解读。     

1 个答案:

答案 0 :(得分:0)

在我理解描述的范围内,选项包括: