Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在XSLT中重置页码_Xslt_Xslt 1.0 - Fatal编程技术网

如何在XSLT中重置页码

如何在XSLT中重置页码,xslt,xslt-1.0,Xslt,Xslt 1.0,我有以下XSLT结构: <fo:layout-master-set> <fo:simple-page-master master-name="simpleA4" > <fo:region-body/> <fo:region-after extent="0.4cm"/> </fo:simple-page-master>

我有以下XSLT结构:

<fo:layout-master-set>
    <fo:simple-page-master master-name="simpleA4" >                    
      <fo:region-body/>
      <fo:region-after extent="0.4cm"/>          
    </fo:simple-page-master>             
</fo:layout-master-set>

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

    <fo:static-content flow-name="xsl-region-after">
      <fo:block font-size="5pt">
        Page <fo:page-number  />
      </fo:block>
    </fo:static-content>

    <fo:flow  flow-name="xsl-region-body">   
        <fo:block font-size="8pt">
            <!-Loop goes here->
        </fo:block>
    </fo:flow>

</fo:page-sequence>

我需要从1开始重新开始,关于身体内部的循环。是否可以重置页码或任何替代方案?

我不确定是否可以通过xslt直接重置fo:页码,因为页码是由FOP分配的。当页面中有未知行的动态内容时,很难找到页码。你试过这个吗

我建议您,如果您确定每一行都有固定的行,您可以手动生成行号,而不是使用。删除fo:用于生成页码的静态内容节点,手动计算页码并将其添加到每个页面的末尾

让我们假设您的页面正文中有80行

for each 1 to totalRows
  add page header
  when rowCount%80=0
    add pageNumber

我不确定是否可以通过xslt直接重置fo:page number,因为页码是由FOP分配的。当页面中有未知行的动态内容时,很难找到页码。你试过这个吗

我建议您,如果您确定每一行都有固定的行,您可以手动生成行号,而不是使用。删除fo:用于生成页码的静态内容节点,手动计算页码并将其添加到每个页面的末尾

让我们假设您的页面正文中有80行

for each 1 to totalRows
  add page header
  when rowCount%80=0
    add pageNumber

我想这是可能的,试试这个

<fo:page-sequence master-reference="simpleA4" initial-page-number="1" force-page-count="no-force">

然后将fo:page序列放入循环中。

我认为这是可能的,试试这个

<fo:page-sequence master-reference="simpleA4" initial-page-number="1" force-page-count="no-force">

然后将fo:page序列放入循环中。

我做了类似的事情,假设35行固定。问题是,如果任何行单元格都被大量内容包装,那么固定计数将是错误的。无论如何,如果XSLT具有重置页码的功能,这将是一件好事。如果无法访问stylusstudio,则可以获得更好的结果。看到这个线程msg00436.html可能会有一些想法。我已经做了类似的事情,假设35个固定行。问题是,如果任何行单元格都被大量内容包装,那么固定计数将是错误的。无论如何,如果XSLT具有重置页码的功能,这将是一件好事。如果无法访问stylusstudio,则可以获得更好的结果。看到这个帖子msg00436.html可能会有一些想法。就是这样。我将内部循环从页面序列内部替换为页面序列外部。就是这样。我将内部循环从页面序列内部替换为页面序列外部。