如何在XSLT中重置页码
我有以下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>
<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可能会有一些想法。就是这样。我将内部循环从页面序列内部替换为页面序列外部。就是这样。我将内部循环从页面序列内部替换为页面序列外部。