首页 > 解决方案 > 如何使用样式表自定义 Docbook?我在哪里可以找到好的资源?

问题描述

我必须为我所做的项目以及屏幕截图等制作某种形式的文档,并且我想让它不那么简单,所以我尝试将 CSS 添加到我的文件中,但它没有用。经过一番浏览后,我发现这需要 XSL 或 XSLT,而我从未使用过,也找不到任何好的教程/文档/示例。

标签: docbookdocbook-xsl

解决方案


您必须区分 DocBook 的不同部分 - 创作和处理(输出结果)。

创作

DocBook 创作非常简单——要获得最佳结果,请使用特殊的 GUI XML 编辑器,例如XMLMind XML EditorOxygenXML Author,而不是纯文本编辑器(我与 XMLMind 或 Oxygen 没有任何关联)。当然,你可以问,为什么我提到了创作工具而不是定制本身,以及这些工具是如何与定制相关的?答案是:任何 XML 编辑器本身都可以以某种方式完全定制,您需要它来进行富有成效的工作。那里几乎没有与 DocBook XSL 样式表相关的内容,但可以自定义任何编辑器以获得最合适的创作结果。而且这种定制的许多部分都与 XSLT/XPath 相关。

加工

这部分完全取决于您对 XSLT 领域的了解,同时,您想要获得什么结果(期望)。DocBook 样式表旨在获得结果(输出文件),而与您的 XSLT 知识无关,但结果的复杂性将完全取决于您的知识水平。以下是一个简单的列表,可让您了解您需要去的地方:

  1. 如果您对 XSLT 一无所知 - 您会得到开箱即用的默认结果。

  2. 如果您准备好深入研究 DocBook 参数并对其进行调整 - 您将获得更适合您需求的结果。即,您可以调整 PDF ( body.font.master) 的页面字体,选择 TOC ( generate.toc) 中包含的文档标题等。您只需要调整一个文件:<docbook-xsl-distro-dir>/<output_type>/param.xsl,其中docbook-xsl-distro-dir- 是您的 DocBook XSL 样式表的目录,<output_type>- 输出结果的类型需要获取(fo>打印,html> html)。要了解每个参数适用于什么,您可以使用DocBook XSL 参考或/和(推荐!)书DocBook XSL: Bob Stayton 的完整指南(可在线获得)。

  3. 如果您准备好深入研究定制 - 您需要为您的输出获得非常复杂的结果。在这种情况下,您需要:

    • 了解 XSLT(DocBook XSL 样式表是用 XSLT 1.0 编写的)。我会推荐XSLT Quickly(来自Manning 出版);
    • 通读DocBook XSL:完整指南
    • 了解 HTML 或 XSL:FO(取决于输出)。

推荐阅读