我无法使用 XML 和 XLST 样式表生成带有分页符的 PDF 文档。这是我试图在对 XML 了解甚少的情况下修复的现有代码!这是我第一次看它。
我曾尝试使用 break-before="page" 但没有运气。
这是 XSLT 样式表:
<xsl:template match="/">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:page-sequence-master master-name="alternating">
<fo:repeatable-page-master-alternatives maximum-repeats="no-limit">
<fo:conditional-page-master-reference master-reference="lastsimpleA4" odd-or-even="odd"/>
<fo:conditional-page-master-reference master-reference="lastsimpleA4"/>
<fo:conditional-page-master-reference master-reference="lastsimpleA4" odd-or-even="even"/>
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
<fo:simple-page-master master-name="lastsimpleA4" page-height="29.7cm" page-width="20.99cm" margin-right="1cm" margin-left="1cm" margin-bottom="1cm" margin-top="1cm">
<fo:region-body margin-bottom="41mm"/>
<fo:region-after extent="41mm"/>
</fo:simple-page-master>
</fo:layout-master-set>
</fo:root>
</xsl:template>
<fo:page-sequence master-reference="alternating" initial-page-number="1">
<fo:static-content flow-name="xsl-region-after">
<fo:block>
<xsl:apply-templates select="root/footer"/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<xsl:apply-templates select="root/application"/>
</fo:flow>
</fo:page-sequence>
<xsl:template match="block">
<fo:block break-before="page">
</fo:block>
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="/root/application">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="/root/footer">
<xsl:apply-templates/>
</xsl:template>
这是一个简单的 XML 示例:
<root>
<application><block></block><data>TEST1</data></application>
<footer><data>TEST2</data></footer>
<application><block></block><data>TEST1</data></application>
<footer><data>TEST2</data></footer>
</root>
以下是生成的 PDF 示例:
在页脚部分之后我需要一个分页符(“TEST2”应该只出现一次然后中断)。任何帮助都会很棒。如果您需要任何其他信息,我会提供!