分享
 
 
 

DocBook文件转换环境设定

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

前言

在撰写一份文件的时候,除了文件的架构和内容之外,常常要分 心去处理排版工作,如调整字体的大小、行距、段落缩排、版面大

小等。如果文件要以许多不同格式出版时(如HTML、PDF、Postscript 等格式),还要依据该格式的呈现方式做一番修改。这些额外的修

改工作,往往使撰写文件成为一件 旷日费时的工作。

DocBook是一套由Norman Walsh所发展的技术文件撰写环境,其中 包含了一组XML DTD定义,用来规范文件的结构,以及一组XSL

stylesheet文件格式转换的stylesheet。Docbook提供了一个撰写结 构化文件的环境,编辑文件时只要考虑文件的结构与内容,而不必

理会文件呈现的版面与文字编排。只有当文件要出版时,才套用 DocBook所提供的stylesheet,将文件转换成各式各样的出版格式,

例如HTML、PDF、PostScript等。文件转换之后的格式与排版方式, 完全视所套用的stylesheet而定。一个完整的文件转换环境,除了

要有stylesheet之外,还要安装stylesheet proces

本文将介绍如何在Linux系统上安装DocBook文件转换环境,包括 stylesheet安装、stylesheet processor安装、stylesheet及

stylesheet processor的中文化等等。目前DocBook所提供的stylesheet 有两种,分别由DSSSL(Document Style Semantics and Specification Language)及XSL(eXtensibleStylesheet Language)语言所定义。由于DSSSL部份在中文文件的 转换上尚有困难,故本文只拟说明XSL的部份。在使用上,XSL stylesheet processor被分成两个部份,一为XSLT processor(XSL Transformations processor)--负责将文件转换到form atting objects格式;另一为formatter--负责将formatting objects转换 成可打印格式。本文所使用的XSLT processor及formatter为Apache 计画所发展的xalan 2.2版及FOP 0.20.3版。

设定DocBook文件转换环境大致可以分成:安装DocBook XSL Stylesheet、安装XSLT Processor(XSL Transformations Processor)、

安装Formatter、以及设定中文化环境等步骤,分别说明如下:

安装DocBook XSL Stylesheet

stylesheet决定了文件的输出格式(如:HTML、PDF等)以及呈现 样式(如:字形、字体大小、页面编排等)。DocBook所提供的

stylesheet可以输出HTML、HTMLHELP XHTML、JAVAHELP、Formating Object等格式。其中,Formatting Object格式是转成PDF及其它出

版格式的媒介。

安装DocBook XSL Stylesheet的步骤只要将整个套件下载之后, 解压缩并置放在适当的目录下即可。以docbook XSL Stylesheet

1.48版为例,其安装步骤如下:

1.从sourceforge下载docbook-xsl-1.48.tar.gz:

$ wget http://prdownloads.sourceforge.net/docbook/docbook-xsl-1.48.tar.gz

2.解开档案到适当的目录,假设解开到/usr/share/sgml/docbook:

$ tar zxvf docbook-xsl-1.48.tar.gz -C /usr/share/sgml/docbook

当解开压缩档以后,在您的/usr/share/sgml/docbook路径下会出 现一个docbook-xsl-1.48的目录,该目录即为DocBook XSL Stylesheet

存放的目录,读者亦可自行决定将其置放在其它路径。

安装XSLT Processor(XSL Transformations Processor)

XSLT Processor是XML文件的格式转换器,可以依据XSL stylesheet 的定义将XML文件转换至其它格式。XSLT Processor在转换文件时,

没有预定的格式,完全依据XSL Stylesheet的描述来决定输出的档 案格式及内容编排,在文件转换中扮演一个引擎的角色。目前有许

多的计画在发展XSLT Processor,其中,xalan是Apache计画所发 展的一个XSLT processor,目前有两个分支,一个是由Java语言实

做出来的;另一个则是C++语言实做出来的。下面就以Java实做的 xalan 2.2版来说明安装程序。

执行xalan必须要有Java执行环境,在安装xalan之前,请先安装 好Java的执行环境。然后依据下列步骤安装xalan:

1.请至http://xml.apache.org网站下载xalan-j 2.2版套件:

$ wget http://xml.apache.org/dist/xalan-j/xalan-j_2_2-bin.tar.gz

2.将xalan-j套件解开:

$ tar zxvf xalan-j_2_2-bin.tar.gz

3.把bin目录下所有以jar为附文件名的档案拷贝到Java的library目录:

$ cp xalan-j_2_2_0/bin/*.jar /usr/java/jdk1.3.1/lib

安装好xalan之后,就可以做DocBook对HTML的转换了。举例来说, 编辑一个简单的DocBook文件hello.xml,其内容如下:

“http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd”>

Hello world!

存盘之后,就可以做文件转换了。但由于xalan在执行时,必须包 含许多个class path,下指令时不容易记忆,所以最好是写成

shell script。下列为执行xalan的shell script例子:

#!/bin/sh

# JAVA interpreter 的安装路径

JAVA=/usr/java/jdk1.3.1/bin/java

# JAVA library 的安装路径

JAVA_LIB=/usr/java/jdk1.3.1/lib

# 所有的类别路径

CLASSPATH=”$JAVA_LIB/xalan.jar:$JAVA_LIB/xerces.jar”

export CLASSPATH

# 执行

$JAVA org.apache.xalan.xslt.Process “$@”

将shell script存成xalan.sh,可以放在/usr/local/bin目录下

或任何$PATH变量定义的路径下以便执行。存盘后就可以用xalan.sh

指令来转换DocBook文件成为HTML文件了:

xalan.sh -in sample.xml -xsl /usr/share/sgml/docbook/docbook-xsl-1.48/html/docbook.xsl-out sample.html

程序执行完之后产生sample.html檔,使用mozilla浏览看看结果 是否正确。

如前所述,XSL Stylesheet决定文件转换的格式。因此,只要使 用不同的stylesheet,就会产生不同格式的输出档。xalan使用FO

stylesheet亦可将DocBook文件转换成FO檔:

xalan.sh -in sample.xml -xsl /usr/share/sgml/docbook/docbook-xsl-1.48/fo/docbook.xsl-out sample.fo

程序执行完后产生sample.fo檔。然FO格式的输出文件只是一种媒介 格式而已,如要打印出来,还需经过formatter处理,才能转换成PDF

或PostScript等格式文件。有关formatter的安装介绍,另刊载于下

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有