2012-07-31 58 views
6

Quiero crear un documento PDF con un encabezado y un pie de página en cada página, no sé por qué solo aparecen en páginas impares.Encabezado y pie de página XSL FO

Simplifico el código y creo una tabla y repetí varias veces para tener 4 páginas pero el resultado es el mismo, el encabezado y el pie de página aparecen solo en la primera y la tercera página.

Aquí está el código. La versión xsl es 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-height="29.7cm" 
       page-width="21cm" 
       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> 

Respuesta

2

Resolver el problema.

Lo que pasa es que los márgenes de región-cuerpo, región-antes y región-después no eran correctos.

Cuestiones relacionadas