页眉和页脚 XSL FO

Posted

技术标签:

【中文标题】页眉和页脚 XSL FO【英文标题】:Header and Footer XSL FO 【发布时间】:2012-07-28 23:54:00 【问题描述】:

我想在每页创建一个带有页眉和页脚的 PDF 文档,我不知道为什么它们只出现在奇数页中。

我简化了代码,我创建了一个表格,我重复了几次,有 4 页,但结果是一样的,页眉和页脚只出现在第一页和第三页。

这里是代码。 xsl 版本是 1.0。

<xsl:output indent="yes"/>

<xsl:template match ="template">
    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">

    <fo:layout-master-set>
<!-- layout information -->
<fo:simple-page-master master-name="pagetemplate"
              page-
              page-
              margin-top="1cm"
              margin-bottom="0.1cm"
              margin-left="0.8cm"
              margin-right="1.0cm">
  <fo:region-body margin-top="2.5cm" margin-bottom="2.5cm"/>
  <fo:region-before extent="2.0cm"/>
  <fo:region-after extent="2.0cm"/>
</fo:simple-page-master>
</fo:layout-master-set>

<fo:page-sequence master-reference="pagetemplate">

          <fo:static-content flow-name="xsl-region-before">
      <fo:block>
           <xsl:call-template name="header"/>
       </fo:block>
      </fo:static-content>

      <fo:static-content flow-name="xsl-region-after">
       <fo:block>
        <xsl:call-template name="footer"/>
       </fo:block>
      </fo:static-content>

      <fo:flow flow-name="xsl-region-body">

     <xsl:call-template name="block"/>
             <xsl:call-template name="block"/>
             <xsl:call-template name="block"/>
             <xsl:call-template name="block"/>

      </fo:flow>

</fo:page-sequence>

</fo:root>

</xsl:template>

【问题讨论】:

【参考方案1】:

我解决了这个问题。

问题是 region-body、region-before 和 region-after 的边距不正确。

【讨论】:

以上是关于页眉和页脚 XSL FO的主要内容,如果未能解决你的问题,请参考以下文章

如何在Excel中设置页眉和页脚

打印网页上的页眉和页脚如何设置

UICollectionView 页眉和页脚视图

如何使页眉和页脚始终固定?

在 Elementor 中删除页眉和页脚

Codeigniter 加载页眉和页脚一次