docbook自定义xsl

版权所有,转载请注明来源http://gogo1217.iteye.com,违者必究!

最近准备把团队的文档编写工具从word迁移到docbook,这么做的出于几个原因:

  1. 团队的文档编写水平参差不齐,大家的细致程度不一样,虽然有统一的规范模板,但是总是得不到统一:要不忘记图片的样式,要不忘记了目录的刷新,等等。
  2. 示例代码不能语法高亮,如果希望语法高亮,需要从IDE编辑器中拷贝出来,还得将文字的字体重新编辑下。
  3. 图片的标号在文档结构目录调整后,还得重新编号
  4. 写文档很多时间花费在格式的统一上,写完文档后,除了要校正文档内容,还得校正文档格式,管理上比较麻烦。
  5. XML比较容易纳入版本控制,而且对比差别比较方便。
  6. word多人协作编写不是很方便。

使用docbook,使得文档编写工作更加关注文档内容和结构,而无需或者很少关注文档的格式;内置了丰富的标签,满足我们文档的编写,如:bookinfo、chapter、sect*、para、glossary、qandaset、programlisting,这点和HTML5新增标签类似,语义化强。

它的基本原理就是将XML通过xsl定义转化为特定的格式。

docbook是XML语法,因次可以使用文本编辑器编写,当然也可以使用 xmlmind xml editor 进行编辑。

关于docbook的更多介绍,大家可以查阅他的官方网站: http://www.docbook.org/

docbook的官方提供了一套默认的转换规则,但是这套规则不是很适合我们的格式规范。需要对他进行定制。

现在最新版本为docbook-xsl-1.78.1。

我们基于jboss-docbook-xsl,进行了大幅度修改,只保留了章节标题的设置,去掉了jboss语法高亮、页眉页脚等设置,需要使用fop1.0及以上。

使用的时候注意:

  1. 需要自定义属性 docbook.xsl.path 指向本目录
  2. 需要加入外部字体 TimesNewRoman、SimHei和SimSun
  3. 需要拷贝 docbook-xsl-1.78.1 和当前目录同级,即

    +config
    +-docbook-xsl-1.78.1
    +-bonc-docbook-xsl

其中:

默认提供的中文本地化语言文件中,章节中间的空格展现为#。

参考这位仁兄的办法,得到解决:http://blog.csdn.net/tanghw/article/details/6854323

具体直接看代码吧:docbook-xsl.zip (137.7 KB)

猜你喜欢

转载自gogo1217.iteye.com/blog/1961276