我是XSL的新手。我想用xsl-fO创建一个PDF。在我的PDF中有像
这样的部分我想在PDF的开头显示此部分的索引。我在xsl中尝试了以下代码,但它无法正常工作。它仅显示" 车辆构造"
<fo:block>Construction of Vehicle
<fo:index-page-citation-list>
<fo:index-key-reference ref-index-key="Construction of Vehicle"/>
</fo:index-page-citation-list>
</fo:block>
还有其他方法可以在XSL中获取索引。 请建议..
答案 0 :(得分:1)
您想要的是目录。
您通常通过在每个部分中放置一个唯一的数字来创建它。就我而言,XML已经包含了我可以使用的唯一编号(idRef属性),否则您可以使用generate-id创建唯一编号。
<xsl:template match="section">
<fo:block id="{@idRef}"/>
<!--section content goes here-->
</xsl:template>
然后TOC是一系列指向每个ID的链接:
<xsl:for-each select="/manual/chapter">
<fo:basic-link internal-destination="{@idRef}"><xsl:value-of select="title"/></fo:basic-link><!-- copies the section title-->
<fo:basic-link internal-destination="{@idRef}"><fo:page-number-citation ref-id="{@idRef}"/></fo:basic-link><!-- generates the page number of the section-->