我正在使用1.77 xsl转换将docbook转换为html。但是当它被转换时,它会自动生成一个目录。你如何改变这种行为?
我找到了这个:Disable table of contents for documents
所以我猜测html xsl转换会是演示系统吗?
答案 0 :(得分:1)
转换时,您可以使用Transformer#setParameter(String, Object)
方法指定不会像这样生成TOC:
transformer.setParameter("generate.toc", "nop");
答案 1 :(得分:1)
精心设计的DocBook格式是使用xsl样式表自定义的。
Writing a DocBOok Customization Layer for Formatting
Customizing Table Of Contents Using XSL
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0"> <!-- change this to 2.0 if your tools support it -->
<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/fo/docbook.xsl"/>
<!--uncomment this to suppress toc when using XSL 1.0 or 2.0
<xsl:param name="generate.toc">article</xsl:param>
<xsl:param name="generate.toc">book</xsl:param>
-->
<!--uncomment this to suppress toc when using XSL 2.0
<xsl:param name="generate.toc">
article nop
book nop
</xsl:param>
-->
</xsl:stylesheet>
指向您的工具以使用customize_formatting.xsl而不是现成的docbook.xsl。然后,将所有格式自定义设置放在<xsl:stylesheet>
部分的正文中。
对于TOC抑制,您可以取消注释相应的行。
有一些(或许所有)XSL 1.0工具的怪癖似乎阻止它们处理<xsl:param name="generate.toc">
主体中使用的空格分隔对。我通过使用单个词article
或book
而不是正确的空格分隔对来成功抑制TOC。