我想基于特定<section>
是否定义了某个属性,使DocBook目录粗体的某些行。通过向DocBook XSL添加<xsl:if test="...">
语句很容易(fo / autotoc.xsl第187-230行 - 这是使用XMLMind输出到PDF)。
答案 0 :(得分:9)
Import来自您自己的XSLT的docbook样式表。然后,(重新)定义要“覆盖”的Docbook模板。
由于您的模板在导入树中最高,因此优先。
通过这样做,您不必修改任何核心docbook XSLT文件。它将在未来更轻松地升级Docbook样式表。
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="xsl/fo/docbook.xsl"/>
<xsl:template match="template-that-you-need-to-redefine">
...
</xsl:template>
</xsl:stylesheet>