我有一个由多个子文档组成的文档。以下是子文档的格式:
1页
2-n页
接下来是具有相同结构的下一个子文档:
1页
2-m页
正如我所说,这些子文档被合并在单个.pdf文件中。
以下是我的xsl-fo模板:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:output method="xml" indent="yes" />
<xsl:template match="/">
<fo:root font-size="11pt" font-family="serif">
<fo:layout-master-set>
<fo:simple-page-master master-name="A4-portrait"
page-height="29.7cm" page-width="21.0cm" margin-top="1cm"
margin-left="1.5cm" margin-right="1cm" margin-bottom="1cm">
<fo:region-body />
<fo:region-after region-name="footer" extent="15mm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<!-- first sub-document -->
<fo:page-sequence master-reference="A4-portrait" initial-page-number="1">
...........
<fo:block text-align="center">
Page <fo:page-number/>/<fo:page-number-citation-last ref-id="end"/>
</fo:block>
...........
</fo:page-sequence>
<fo:page-sequence master-reference="A4-portrait" id="end">
...........
<fo:block text-align="center">
Page <fo:page-number/>/<fo:page-number-citation-last ref-id="end"/>
</fo:block>
...........
</fo:page-sequence>
<!-- second sub-document -->
<fo:page-sequence master-reference="A4-portrait" initial-page-number="1">
...........
<fo:block text-align="center">
Page <fo:page-number/>/<fo:page-number-citation-last ref-id="end"/>
</fo:block>
...........
</fo:page-sequence>
<fo:page-sequence master-reference="A4-portrait" id="end">
...........
<fo:block text-align="center">
Page <fo:page-number/>/<fo:page-number-citation-last ref-id="end"/>
</fo:block>
...........
</fo:page-sequence>
</fo:root>
</xsl:template>
</xsl:stylesheet>
我有两个相同的块,每个块都包含两个页面序列。以我的例子为例,假设子文档1有4页(n=4),子文档2有2页(m=2)。这里是我得到的页面编号:
1/4
2/4
3/4
4/4
1/4
2/2
除了第二个子文档的第一页外,一切正常。此时,
<fo:page-number-citation-last ref-id="end"/>
返回子文档1的值4。所以,我得到了1/4
而不是1/2
。有什么建议可以解决这个问题吗?
.......
。 - Mathias Müllerid="end"
的元素吗? - user1414745