Docbook intr

617 views

Published on

一份关于如何使用Docbook的介绍。

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
617
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Docbook intr

  1. 1. 利用DocBook(XML)来写作! 就我所知道的那么一滴 李 建盛 二零零九年七月十二日 1.0
  2. 2. 章程 介绍什么是DocBook? 准备环境 开始写作 关于DocBook元素、DocBook XSL的一些实例 资源列表+Questions? 2 / 32
  3. 3. Introduction 从概念、历史、特征等来述说,目的使大家有一个笼统的 认识. Introduction 3 / 32
  4. 4. 什么是DocBook? • 一套用SGML或XML来书写结构化文档的系统! • 主要目的是对计算机技术相关文档和书籍的支持,当然 也包含一些其它的领域。 • 除出版物之外也对web页面有很好的支持,甚至是演示 文稿。 • 背后有很多、很强大的free/opensource工具的支持。 • 有很多用户和开发者的支持! Introduction 4 / 32
  5. 5. 历史 • 由HaL Computer Systems and O'Reilly & Associates在 1991年联合公布和开发 • 稍后的发展由许多公司共同开发:如SUN,HP,DEC等. 1 • 目前由OASIS 在维护,版本为5.0 Introduction 5 / 32
  6. 6. 谁在使用/开发/支持DocBook? 那些商业公司在如何使用,我们不得而知。 以下是较知名的社区: • • • • • • • • Introduction Linux Documentation Project GNOME Documentation Project RedHat SuSE http://docs.kde.org ....... ....... 也许有一天会加上"RedFlag"这个响亮的名字! 6 / 32
  7. 7. DocBook 的优点 • 拥有非常棒 社区用户和开发者们 • 容易定制和扩展现有的样式定义 • 有很多优秀的开源和自由软件工具的支持 • 多种格式的输出,包括: • HTML • HTML Help • Java Help • man pages • MIF (Adobe FrameMaker) • PDF • PostScript • RTF (Microsoft) • TeX Introduction 7 / 32
  8. 8. DocBook 的优点 (Continued) • Text • XHTML • XSL Formatting Objects (FO) Introduction 8 / 32
  9. 9. 环境准备 工欲善其事,必先利其器! 环境准备 9 / 32
  10. 10. XML编辑器 Emacs with psgml vim with macros Bluefish,gedit+publish plugin,kedit....... 明显与所想即所得的距离 环境准备 2 Emacs加上 psgml 模 式 3 4 Vim 和 macros 加 速。。。 图形的下 的文本工具 所谓之所见即所 得,XMLmind XML Editor 10 / 32
  11. 11. DocBook DTD 5 到DTD的维护网站 下载相应的版本, 当然这是每个发行版中必备的,我们的服务器产品和桌面 产品默认都带了dtd文件。 LSB标准的路径是/usr/share/sgml/docbook/ 5 http://www.oasis-open.org/docbook/xml/5.0b5/docbook-5.0b5.tar.gz 环境准备 11 / 32
  12. 12. DocBook XML XSL 由Norman Walsh所维护 有两种形式 • XSL • DSSSL 到docbook@sourceforge.net上下载. 请参考我下载的文件 环境准备 12 / 32
  13. 13. XSL Stylesheets • XSLT 可以将 DocBook XML 转换为下列格式: • HTML • HTML Help (for Windows Help) • Java Help • XHTML • XSL Formatting Objects (FO) • 额外的工具可以将FO文件转换为PDF, PostScript等 环境准备 13 / 32
  14. 14. DSSSL Document Style Semantics and Specification Language的 缩写 • DSSSL 可以将DocBook SGML 转换为下列格式的文档: • HTML • MIF • RTF • TeX 环境准备 14 / 32
  15. 15. XSLT processor - libxslt/xsltproc • http://xmlsoft.org/XSLT/ • C 实现. • 由来自RedHat的Daniel Veillard开发, 隶属于GNOME Project • 由下列命令实现: • xsltproc - XSLT processor • xmllint - XML 有效性和格式检验程序 • 非常 快 • 依赖libxml2 和 libxslt 用法: xsltproc -o outputfile stylesheet inputfile 环境准备 15 / 32
  16. 16. XSLT processor - Saxon • • • • http://saxon.sourceforge.net/ Java 实现 由Michael Kay开发 支持许多XSLT实验性的特性. java com.icl.saxon.StyleSheet inputfile styleshee 环境准备 16 / 32
  17. 17. XSLT processor - Xalan • • • • http://xml.apache.org/ Java实现,也有C++的版本。 Apache基金会所开发。 广泛应用于开源社区. java org.apache.xml.xalan.xslt.Process -IN inputf 环境准备 17 / 32
  18. 18. XSL-FO processor apache FOP • • • • http://xmlgraphics.apache.org/fop/ Java实现. Apache基金会所开发。 0.95版本后对中文支持很好. fop -fo filename.fo -pdf filename.pdf 环境准备 18 / 32
  19. 19. xsl运行图 环境准备 19 / 32
  20. 20. 原理简介 • 众所周知,XML能够很好表达结构化的数据。但是其无 法表达它的表达形式。 • 那么将外观表现交给扩展样式表语言XSL来处理,得到 格式化的对象 • 这个Formatting Object仍然是XML文件,但是多了许多 和表现有关的属性。 • 然后FO再按照某种格式的文档输出,如PDF、PS可打 印,web页面、RTF,htmlhelp,javahelp,manpage等等 环境准备 20 / 32
  21. 21. 让我们开始愉快的写作之旅吧! 我们简要的分别写一个书和文章的例子,来体验 DocBook。 让我们开始愉快的写作之旅吧! 21 / 32
  22. 22. 书 简单的书的样例:examplebook.xml <?xml version="1.0"?> <book> <bookinfo> <title>23小时学会红旗linux操作系统</title> </bookinfo> <chapter> <title>第一章</title> <sect1> <title>第一节</title> <para>这是内容.</para> </sect1> <sect1>...</sect1> </chapter> <chapter>...</chapter> 让我们开始愉快的写作之旅吧! 22 / 32
  23. 23. 书 (Continued) <chapter>...</chapter> <chapter>...</chapter> <appendix>...</appendix> <appendix>...</appendix> </book> 基本的书的元素就已成形,请看pdf或html输出。 让我们开始愉快的写作之旅吧! 23 / 32
  24. 24. 文章 [<?xml version="1.0"?> <article> <articleinfo> <title>文章样例</title> </articleinfo> <para>摘要性的介绍文字。</para> <sect1> <title>第一章</title> <para>这里添加内容</para> <sect2> <title>第一章的章节分支1</title> <para>你好!你是垃圾! </para> </sect2> <sect2>...</sect2> 让我们开始愉快的写作之旅吧! 24 / 32
  25. 25. 文章 (Continued) <sect2>...</sect2> </sect1> <sect1>...</sect1> <sect1>...</sect1> <sect1>...</sect1> </article> 让我们开始愉快的写作之旅吧! 25 / 32
  26. 26. 如何编译 最简单的形式莫过于直接像上述那样直接执行命令即可 请看实例xml-format.sh 但是如果是多人合作了呢? “Makefile” 是最好的办法, 让我们开始愉快的写作之旅吧! 26 / 32
  27. 27. DocBook元素和其XSL语言的实例 以解决孙国栋的问题为主 DocBook元素和其XSL语言的实例 27 / 32
  28. 28. DobBook元素 主要以我已经写就的文档为参考 • • • • • DocBook元素和其XSL语言的实例 目录、索引、引用等 等宽字体的支持 图片和表格 插入代码等 28 / 32
  29. 29. 除XML以外的利用DocBook写作的形式 除XML以外的利用DocBook写作的形式 29 / 32
  30. 30. SGML + OpenJade 请参考中文资料 6 DocBook 助你完成传世之作 6 http://www.worldhello.net/doc/docbook_howto/ 除XML以外的利用DocBook写作的形式 30 / 32
  31. 31. 参考资料 我从以下站点获得许多帮助 • http://www.ibm.com/developerworks/linux/library/xreuseinfo1/index.html • http://blog.sina.com.cn/s/ blog_3ef2a82a0100davi.html### 推荐读物和链接: • • • • 7 DocBook社区 8 一篇讲解非常详细的演示文稿 9 DocBook XSL: The Complete Guide - 4th Edition 10 Publican官方站点 31 / 32
  32. 32. Q&A Any questions? 32 / 32

×