我正在尝试使用page-break
或两个模板之间的任何空格。
<xsl:template match="content_name">
<fo:block space-after="7pt" space-after.conditionality="retain" line-
height="1.147" font-family="Calibri" font-size="15pt" font-weight="bold" language="FR">
</fo:block>
</xsl:template>
<!--Here i want to add a page break-->
<xsl:template match="pro_list">
<fo:block space-after="15pt" space-after.conditionality="retain" line-height="1.147" font-family="Calibri" font-size="15pt" font-weight="bold" text-decoration="underline" language="FR">
</fo:block>
</xsl:template>
你能告诉我如何实现这个目标吗? 我尝试了很多选项,但没有一个可以工作......
答案 0 :(得分:1)
你不能这样做。
您的问题是对XSLT如何工作的基本误解的结果。每个xsl:template
匹配一种指定形式的XML。尝试在两个模板之间添加匹配是徒劳的。因此,每个page-break
功能必须在模板中,而不在两个模板之间。
因此,您可以在此处添加page-break
<xsl:template match="content_name">
<fo:block space-after="7pt" space-after.conditionality="retain" line-
height="1.147" font-family="Calibri" font-size="15pt" font-weight="bold" language="FR">
<!-- Add a page break here -->
</fo:block>
</xsl:template>
或那里
<xsl:template match="pro_list">
<fo:block space-after="15pt" space-after.conditionality="retain" line-height="1.147" font-family="Calibri" font-size="15pt" font-weight="bold" text-decoration="underline" language="FR">
</fo:block>
<!-- Add a page break here -->
</xsl:template>
或这两个模板中的任何其他位置。但 这些模板之间没有!