我正在使用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>