在xsl中插入页码

时间:2013-10-14 09:25:09

标签: xml xsl-fo

我需要在页眉中插入页码,如第x页的n。 它应该是简单的,但我不能让它工作。

我试过了。

<fo:page-sequence initial-page-number="1">
  <fo:static-content flow-name="xsl-region-after">
<fo:block>Page <fo:page-number/> of
<fo:page-number-citation ref-id="theEnd"/>    </fo:block>
  </fo:static-content>
</fo:page-sequence>

使用xmlns:fo =“http://www.w3.org/1999/XSL/Format命名空间并在文档的最后     

任何帮助都将不胜感激。

由于

2 个答案:

答案 0 :(得分:1)

我认为你的意思是你实际上在页面中有内容,如:

<fo:page-sequence initial-page-number="1">
  <fo:static-content flow-name="xsl-region-after">
   <fo:block>Page <fo:page-number/> of
    <fo:page-number-citation ref-id="theEnd"/>    </fo:block>
   </fo:static-content>
   <fo:flow>
       <fo:block>I have a lot of content here ...</fo:block>
       <!-- and even more here -->
   </fo:flow>
 </fo:page-sequence>

然后你可以按照建议的结尾使用一个空块:

 <fo:block id="theEnd"/>

或者您也可以使用(如果您的格式化程序支持它):

 <fo:flow id="myDoc">...

并使用:

 <fo:page-number-citation-last id-ref="myDoc"/>

第二种方法消除了在空的末尾删除特殊块的需要。另请注意,这适用于具有一个页面序列的文档,如果您有包含多个页面序列元素的文档,则需要将“id”和“idref”与每个页面序列的唯一内容匹配。

答案 1 :(得分:0)

您引用的元素需要具有id属性,而不是ref-id:

<fo:block id="theEnd"/>