DocBook中的数字编号



我正在使用Maven docbkx插件生成PDF。

我希望数字像往常一样从1开始按顺序编号,忽略任何章节等。

这不起作用,因为我在pom.xml中使用配置参数sectionLabelIncludesComponentLabel打开了节的层次编号。现在,第2章的第一部分不是1(默认情况下),而是2.1,正如我所希望的。

但作为副作用,第2.1章中的第一个数字也得到了数字2.1,下一个数字得到了2.2,所以章节编号不仅是为章节准备的,而且是为数字准备的(这完全没有意义)。

如何既有分层的截面编号,又有简单的连续图形编号?

[编辑]

看起来sectionLabelIncludesComponentLabel与它无关。即使我关闭了它,图的标题也会以章节号为前缀。

没有参数可以切换所需的行为,但可以通过在common/labels.xsl中自定义模板来完成(标题的数字部分在DocBook xsl中称为"标签")。

您需要创建一个自定义层,并添加以下内容:

<xsl:template match="db:figure" mode="label.markup">
  <xsl:choose>
    <xsl:when test="@label">
      <xsl:value-of select="@label"/>
    </xsl:when>
    <xsl:otherwise>
     <!-- Use simple sequential numbering within a book -->
     <xsl:number format="1" from="db:book" level="any"/> 
    </xsl:otherwise>
  </xsl:choose>
</xsl:template>

相关内容

  • 没有找到相关文章

最新更新