`
gogo1217
  • 浏览: 152129 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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)

 

 

 

 

分享到:
评论
9 楼 gogo1217 2014-07-05  
http://gogo1217.iteye.com/blog/2088628
houyongbo03 写道
gogo1217 写道
1、为了保证上传文件的体积,没有包含docbook-xsl-1.78.1,所以需要额外的加入,放在同级
2、同时需要从操作系统中拷贝 TimesNewRoman、SimHei和SimSun这些字体
3、如果使用xxe(XML Editor)则需要设置字体变量指向上面的字体,以及设置转换变量 docbook.xsl.path为bonc-docbook-xsl所在的路径。
周末有空了我将写一篇xxe的使用吧。

houyongbo03 写道
请问这个包怎么用,怎么整合,能把整个工程共享一份吗?
另外“需要自定义属性 docbook.xsl.path 指向本目录”请问是什么意思?


太好了,期待中……

8 楼 houyongbo03 2014-07-03  
gogo1217 写道
1、为了保证上传文件的体积,没有包含docbook-xsl-1.78.1,所以需要额外的加入,放在同级
2、同时需要从操作系统中拷贝 TimesNewRoman、SimHei和SimSun这些字体
3、如果使用xxe(XML Editor)则需要设置字体变量指向上面的字体,以及设置转换变量 docbook.xsl.path为bonc-docbook-xsl所在的路径。
周末有空了我将写一篇xxe的使用吧。

houyongbo03 写道
请问这个包怎么用,怎么整合,能把整个工程共享一份吗?
另外“需要自定义属性 docbook.xsl.path 指向本目录”请问是什么意思?


太好了,期待中……
7 楼 gogo1217 2014-07-03  
已经共享到 github 上了,地址 https://github.com/gogo1217/docbook-xsl
houyongbo03 写道
请问这个包怎么用,怎么整合,能把整个工程共享一份吗?
另外“需要自定义属性 docbook.xsl.path 指向本目录”请问是什么意思?

6 楼 gogo1217 2014-07-03  
我没用过ant来做,只是使用了maven,这个变量应该没有定义过,是不是你自己的文档本身的问题?
houyongbo03 写道
用ant运行的时候报:
    [xslt] : Fatal Error! org.apache.xml.utils.WrappedRuntimeException: 找不到名为 use.simplified.author.group 的变量 Cause: org.apache.xml.utils.WrappedRuntimeException: 找不到名为 use.simplified.author.group 的变量
     [xslt] Failed to process null

BUILD FAILED

5 楼 gogo1217 2014-07-03  
1、为了保证上传文件的体积,没有包含docbook-xsl-1.78.1,所以需要额外的加入,放在同级
2、同时需要从操作系统中拷贝 TimesNewRoman、SimHei和SimSun这些字体
3、如果使用xxe(XML Editor)则需要设置字体变量指向上面的字体,以及设置转换变量 docbook.xsl.path为bonc-docbook-xsl所在的路径。
周末有空了我将写一篇xxe的使用吧。

houyongbo03 写道
请问这个包怎么用,怎么整合,能把整个工程共享一份吗?
另外“需要自定义属性 docbook.xsl.path 指向本目录”请问是什么意思?

4 楼 houyongbo03 2014-07-02  
用ant运行的时候报:
    [xslt] : Fatal Error! org.apache.xml.utils.WrappedRuntimeException: 找不到名为 use.simplified.author.group 的变量 Cause: org.apache.xml.utils.WrappedRuntimeException: 找不到名为 use.simplified.author.group 的变量
     [xslt] Failed to process null

BUILD FAILED
3 楼 houyongbo03 2014-07-01  
请问这个包怎么用,怎么整合,能把整个工程共享一份吗?
另外“需要自定义属性 docbook.xsl.path 指向本目录”请问是什么意思?
2 楼 jxyangzi 2014-05-22  
我整合了doobook4j和XFC,可导出PDF,HTML,RTF(docbook4j也可导出RTF,但效果不是很好),另外XFC,还可导出docx和odt格式
1 楼 jxyangzi 2014-05-22  
谢谢,你提供的XLS,很不错!

另外,想知道怎么去掉 TOC CONTENT,即目录?

相关推荐

    docbook-xsl-1.73.2.zip

    这个"docbook-xsl-1.73.2.zip"压缩包包含的是DocBook XSL样式表的1.73.2版本,这是一个关键组件在将DocBook XML文档转换成各种输出格式的过程中。 首先,让我们深入理解DocBook XML。DocBook是一种结构化的标记语言...

    dbcookbook:DocBook和DocBook XSL样式表的食谱

    2. **XSLT样式表**:自定义或扩展的DocBook XSLT文件,用于生成特定的输出格式。 3. **脚本和工具**:用于处理DocBook文档和应用XSLT转换的命令行工具或自动化脚本。 4. **教程和指南**:详细介绍如何使用DocBook和...

    DocBook XSL Configurator-开源

    DocBook XSL Configurator 是一个包含三个 Java (Swing) 应用程序的伞形项目,用于创建 DocBook XSL 自定义层(FO、HTML 和 Manpages),然后执行外部子流程以转换 DocBook XML 并查看输出。

    DoCookBook:用于DocBook自定义的Cookbook样式文档-开源

    该项目已移至GitHub:https://github.com/tomschr/dbcookbook/ DoCookBook项目旨在创建有关DocBook和以菜谱形式编写并在Creative Commons许可下发行的DocBook XSL样式表的开源书。

    DocBook to LaTeX XSL stylesheets-开源

    2. **灵活性**:通过自定义XSL样式表,可以适应不同的输出需求,比如生成不同样式的PDF或HTML。 3. **质量**:LaTeX的排版质量高,特别是在数学公式、图表和复杂的布局上。 4. **开源**:这套工具是开源的,这意味着...

    DocBook文档

    7. **样式定制**:通过CSS或XSLT,可以自定义DocBook文档的外观和风格,使其符合品牌规范或者个人喜好。 8. **集成环境**:有些IDE和文本编辑器(如 Oxygen XML Editor, Emacs with nXML mode 等)提供了对DocBook...

    DocBook的使用指南(English Version)

    - **页面布局调整**:掌握如何自定义DocBook文档的页面布局,例如页边距、页眉和页脚等。 **4. 列表项目** - **无序列表**:使用`itemizedlist`元素来创建无序列表。 - **有序列表**:通过`orderedlist`元素创建...

    XMLMind DocBook工具

    3. **样式表(XSLT)支持**:允许用户自定义输出格式,通过应用XSL样式表来改变文档的呈现方式,满足特定的设计需求。 4. **集成开发环境(IDE)**:XMLMind DocBook工具提供了一个完整的集成开发环境,集成了编辑...

    docbook-ant-tools-guide

    - **官方 XSL**: `xsl/docbook` 存放的是官方发布的 DocBook XSL。 #### 七、总结 **Docbook-Ant-Tools** 通过集成 Apache Ant 和 DocBook 的强大功能,极大地简化了从 XML 源码生成高质量文档的过程。无论是对于...

    docbook英文版

    《DocBookXSL: The Complete Guide》是一本全面介绍如何使用DocBook XSL进行文档转换的专业指南书,由Bob Stayton撰写,并由Sagehill Enterprises出版社出版。本书第四版于2007年9月发布。 该书主要涵盖了以下几个...

    PDF版本的DocBook 5.0: 权威指南 版本为r8205

    - **XSL出版示例**:展示如何使用XSL对DocBook文档进行转换和格式化,以便在不同的媒介上发布,如HTML、PDF等。 #### 5. 定制DocBook - **定制的必要性**:讨论何时以及为什么需要对DocBook进行扩展或修改。 - **...

    docbook:Short-Attention-Span Docbook 是一个适用于 OSX、Linux 和 Windows 的 docbook 构建链。 只要您安装了 Java 和 Ruby,就包含作为作者入门所需的一切

    这使用了dookbook-xsl-ns 样式表。 安装和使用 前提条件 为了使用它,您需要一个 Java 运行时环境。 JRE 1.6 很好。 您还需要带有 RubyGems 和 Rake 的 Ruby 1.8.7 或更高版本。 Ruby 的大多数标准安装都将包含...

    DocBook XML Mode for GNU Emacs-开源

    Emacs-Lisp是一种内置的编程语言,用户可以使用它来编写自定义功能、模式或界面。DocBook XML Mode就是这样一个模式,它由Emacs-Lisp代码编写,专门为处理DocBook XML文档提供了许多便利的功能。 使用DocBook XML ...

    PHP Docbook Displayer-开源

    4. **可定制化**:尽管PHP Docbook Displayer提供了默认的XSL和CSS,但用户可以根据需求自定义样式和布局,以适应特定的品牌或项目规范。 5. **导航和索引**:该工具通常会生成一个导航结构,使读者可以方便地浏览...

    saldl:轻巧且功能强大的CLI下载器​​,针对速度和早期预览进行了优化

    基于libcurl的多平台命令行下载器,针对速度和早期预览进行了优化。... 注意:如果docbook-xsl还不是asciidoc的依赖项,也应该安装。 尽管从理论上讲这不是必需的,但如今退回到直接从SourceForge获取XSL样式表似乎是

    jsqldoc-开源

    6. `docbook-xsl`:这个目录很可能存放了用于转换XML到DocBook格式的XSL样式表。 7. `doc` 和 `lib` 目录:可能分别包含了工具的文档资料和所需的库文件,这些库可能包含解析数据库结构、处理XML和XSLT转换等任务所...

    git的安装过程

    - `docbook-xsl` - 文档样式表。 - `libexpat1-dev` - Expat 开发库。 - `subversion` - Subversion 版本控制系统。 - `libsvn-perl` - Subversion 的 Perl 绑定。 - `unzip` - 解压缩工具。 - `tcl8.5` - ...

Global site tag (gtag.js) - Google Analytics