XSL-FO 简介
Part:
1
2
什么是 XSL-FO?
XSL-FO:一种建立在 XML 基础之上的附加排版语言。它的工作原理是在原始文字资料之中
加入 XML 语句,其作用是控制原始文字资料的排版格式。XSL-FO 其实和 TeX 非常相似,而 TeX
在十五年以前就广泛用于各种科技文献排版之中。
XSL-FO 主要特点:
- XSL-FO 采用 XML 语言格式。
- XSL-FO 也可以和 XSL 转换语言结合使用,对被处理的 XML 文件产生两种效果:
一,内容转换;二,打印排版。
“世界你好!”实例
下面是我的第一个 XSL-FO 实例,hello.fo:
<?xml version="1.0" encoding="utf-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="my_page" margin="0.5in">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="my_page">
<fo:flow flow-name="xsl-region-body">
<fo:block>Hello world!</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
请注意:
- 这是一个完整的 XML 文件,其根元素名称为“fo:root”。
- 文中所有元素的名称都有“fo:”前坠,代表 XML 名称空间:“http://www.w3.org/1999/XSL/Format”。
有了 XSL-FO 文件后的下一个问题是用什么软件来处理这样的文件。为此我作了一些调查和测试:
- 我没有什么方法可以用 MS Internet Explorer 6.0 显示 XSL-FO 文件。
- XML Spy 可以用来编辑 XSL-FO 文件,但是我不知道怎样用它显示 XSL-FO 文件。
- 我在网络上查找一番之后,发现了 FOP。试用效果不错,而且能直接生成 PDF 文件。
安装 FOP
经过初步调查,我发现 FOP (Formatting Objects Processor) 似乎是现在最常用的 XSL-FO
处理软件。下面是安装 FOP 的步骤:
1。到 http://xml.apache.org/dist/fop/ 提取 fop-0.20.5rc2-bin.tar.gz
2。用 WinZIP 将 fop-0.20.5rc2-bin.tar.gz 解包,把内容放入 \local\fop-0.20.5rc2
3。建立一份指令文件,run_fop.bat:
\local\j2sdk1.4.1_01\bin\java -cp \local\fop-0.20.5rc2\build\fop.jar;
\local\fop-0.20.5rc2\lib\xercesImpl-2.2.1.jar;
\local\fop-0.20.5rc2\lib\xalan-2.4.1.jar;
\local\fop-0.20.5rc2\lib\avalon-framework-cvs-20020806.jar;
\local\fop-0.20.5rc2\lib\batik.jar org.apache.fop.apps.Fop
%1 %2 %3 %4 %5 %6
注意,这是一条指令,必须写成一行,而且 .jar 文件名之间不能有空格。由于显示宽度的限制,
我不得不把这一条指令写成几行。
如果你在一个指令窗口中运行上述指令文件,得到下面的结果:
run_fop
USAGE
Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-pcl|-ps
|-txt|-at|-print] <outfile>
[OPTIONS]
-d debug mode
-x dump configuration settings
-q quiet mode
-c cfg.xml use additional configuration file cfg.xml
-l lang the language to use for user information
-s for area tree XML, down to block areas only
...
你的安装便是成功的。
根据使用说明,FOP 有两个主要功能:
- 将 XSL-FO 文件排版生成 .txt,.pdf,或者 .ps 文件。
- 按照 XSLT 文件所给转换和排版语句,将 XML 文件转换并排版生成 .txt,.pdf,或者 .ps 文件。
(Continued on next part...)
Part:
1
2
|