<?xml version="1.0" encoding="gb2312"?>

<!-- RSS generated by oioj.net on 4/16/2004 ; 感谢LeXRus提供 RSS 2.0 文档; 此文件可自由使用，但请保留此行信息 --> 
<!-- Source download URL: http://blogger.org.cn/blog/rss2.asp       -->
<rss version="2.0">

<channel>
<title>fanzhixin的博客</title>
<link>http://blogger.org.cn/blog/blog.asp?name=fanzhixin</link>
<description>fanzhixin的博客</description>
<copyright>blogger.org.cn</copyright>
<generator>W3CHINA Blog</generator>
<webMaster>webmaster@blogger.org.cn</webMaster>
<item>
<title><![CDATA[一次性交多长时间才算男人!!!!!(男士请进)]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=fanzhixin&amp;id=8064</link>
<author>fanzhixin</author>
<pubDate>2005/8/27 21:11:36</pubDate>
<description><![CDATA[昨天去交联通宽带一个月100的费用，<BR>营业小姐说一次性交清半年的费用算90，一年80，两年70。<BR>但我哪有那么多钱啊。<BR>她居然说我只交一个月不算男人。<BR>大家评评理，一次性要交多长时间才算男人?<BR>这次在想歪的人出去站三个小时！！！<BR>]]></description>
</item><item>
<title><![CDATA[XSLT 学习笔记]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=fanzhixin&amp;id=8044</link>
<author>fanzhixin</author>
<pubDate>2005/8/26 15:55:10</pubDate>
<description><![CDATA[<P><STRONG><EM><FONT color=#0000ff>前言</FONT></EM></STRONG></P>
<P>XML 文档</P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;?xml&nbsp;version="1.0"&nbsp;encoding="GB2312"?&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;resume&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;name&gt;范志鑫&lt;/name&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;sex&gt;男&lt;/sex&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;birthday&gt;1977.5&lt;/birthday&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;skill&gt;数据库设计与维护、WEB开发&lt;/skill&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0909f7" color=#eeee11>&lt;/resume&gt;</FONT></P>
<P>css 文件</P>
<P>resume{&nbsp;display:&nbsp;block;}</P>
<P>name{&nbsp;display:&nbsp;block;&nbsp;font-size:120%;}</P>
<P>sex{&nbsp;display:block;&nbsp;text-indent:2em}</P>
<P>birthday{&nbsp;display:block;&nbsp;text-indent:2em}</P>
<P>skill{&nbsp;display:block;&nbsp;text-indent:2em}</P>
<P>XML 的几点<FONT style="BACKGROUND-COLOR: #dddddd"><STRONG>注意</STRONG>：</FONT></P>
<P>1.&nbsp;为了更好的理解与掌握XML，建议大家熟悉HTML&nbsp;4.0与CSS&nbsp;2.0语法；掌握<I>javascript</I>、VBscript中至少一种；编程经验、对数据库理论与SQL的了解均能使大家在学习XML时获益。</P>
<P>　　2.&nbsp;XML文档中标记必须成对出现，如果是空标记也必须有前加“/”的同名标记结束，或使用此种文式&lt;&nbsp;xml_mark/&nbsp;&gt;表示空标记。</P>
<P>　　3.&nbsp;XML以及下周将要介绍的XSL文档，属性值必须用双引号（"）或单引号（'）括起来。</P>
<P>　　4.&nbsp;XML文档必须是好结构的（XSL文档也是XML文档中一种），也就是说标记必须有结束标记、标记可以嵌套但不可交叉。</P>
<P>一、入门</P>
<P>XML在更多的时候只是一种数据文件，怎样将它变为我们日常所看到的HTML格式那样的文件呢？如果我们将XML文件比作结构化的原料的话，那么XSL就好比“筛子“与“模子“，筛子选取自己需要的原料，这些原料再通过模子形成最终的产品：HTML。</P>
<P>　　这个模子大致是这样：我们先设计好表现的页面，再将其中需要从XML中获取数据来填充内容的部分“挖掉“，然后用XSL语句从XML中筛出相关的数据来填充。一言以譬之：这XSL实际上就是HTML的一个“壳子“，XML数据利用这个“壳“来生成“传统“的HTML。</P>
<P>　　XML在展开时是一个树形结构，我们将树形结构中自定义标记称为节点，节点之间存在父子、兄弟关系，我们要访问其中的结点从根结点就要以”／”来层层进入。</P>
<P>　　在XSL这个壳中，我们要从原料库XML里提取相关的数据，就要用到XSL提供的模式化查询语言。所谓模式化查询语言，就是通过相关的模式匹配规则表达式从XML里提取数据的特定语句，即我们上所说的“筛子“。</P>
<P>参考微软的”XSL开发者指南”，我们大致可将模式语言分为三种：&nbsp;</P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>选择模式&nbsp;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>&lt;&nbsp;xsl:for-each&nbsp;&gt;、&lt;&nbsp;xsl:<I>value</I>-of&nbsp;&gt;,和&nbsp;&lt;&nbsp;xsl:apply-templates&nbsp;&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>测试模式&nbsp;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>&lt;&nbsp;xsl:if&nbsp;&gt;&nbsp;和&lt;&nbsp;xsl:when&nbsp;&gt;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>匹配模式&nbsp;</FONT></P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>&lt;&nbsp;xsl:template&nbsp;&gt;&nbsp;</FONT></P>
<P>我们现在就分别对之进行介绍。</P>
<P>一、&nbsp;选择模式</P>
<P>选择模式语句将数据从XML中提取出来，是一种简单获得数据的方法，这几个标记都有一个select属性，选取XML中特定的结点名的数据。&nbsp;</P>
<P><FONT style="BACKGROUND-COLOR: #0000ff" color=#ffff00>1、&lt;&nbsp;xsl:for-each&nbsp;&gt;</FONT></P>
<P>语法：&nbsp;</P>
<P>&lt;&nbsp;xsl:for-each&nbsp;select="pattern"&nbsp;order-by="sort-criteria-list"&gt;</P>
<P>&lt;/xsl:for-each&gt;</P>
<P>属性：&nbsp;</P>
<P><FONT style="BACKGROUND-COLOR: #0033ff" color=#ffff00>（1）.&nbsp;select</FONT></P>
<P>　　根据XSL样式查询考察上下文以决定哪类结点集（满足select条件）使用此样式描述。作为一种简化的表示就是，如果你想对文档中的某一种标记的内容的显示方式进行格式化，就可以将让select等于此元素的标记名。例如欲对标记xml_mark进行格式化，即可用如下方式表示：&nbsp;</P>
<P>&lt;&nbsp;xsl:for-each&nbsp;select="xml_mark"&nbsp;&gt;</P>
<P>&lt;&nbsp;!--样式定义--&nbsp;&gt;</P>
<P>&lt;&nbsp;/xsl:for-each&nbsp;&gt;</P>
<P>（2）.&nbsp;order-by</P>
<P>　　以分号（;）分隔、作为排序标准的列表。在列表元素前添加加号（+）表示按此标记的内容以升序排序，添加减号（-）表示逆序排序。作为一种简化的表示就是，排序标准列表就是由select规定的标记的子标记的序列，每个标记之间以（;）分隔。&nbsp;</P>
<P><FONT style="BACKGROUND-COLOR: #0000ff" color=#ffff00>2、&lt;&nbsp;xsl:<I>value</I>-of&nbsp;&gt;</FONT></P>
<P>语法：&nbsp;</P>
<P>&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="pattern"&nbsp;&gt;提取节点的值&nbsp;</P>
<P>属性：&nbsp;</P>
<P><FONT style="BACKGROUND-COLOR: #0000ff"><FONT color=#ffff00>select</FONT>&nbsp;&nbsp;</FONT> 用来与当前上下文匹配的XSL式样。简单的讲，如果要在XSL文档某处插入某个XML标记（假定是xml_mark标记）的内容，可用如下方式表示：&nbsp;</P>
<P>&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="xml_mark"&nbsp;&gt;&lt;&nbsp;/xsl:<I>value</I>-of&nbsp;&gt;</P>
<P>或&nbsp;</P>
<P>&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="xml_mark"/&nbsp;&gt;</P>
<P><FONT style="BACKGROUND-COLOR: #00ff00">示例：</FONT></P>
<P>　　此处仍以上期的个人简历的作为例子</P>
<P>&lt;&nbsp;?xml&nbsp;version="1.0"&nbsp;encoding="GB2312"?&nbsp;&gt;</P>
<P>&lt;&nbsp;HTML&nbsp;xmlns:xsl="<A class=contentlink href='http://www.w3.org/TR/WD-xsl"' target=_blank><FONT color=#4455aa>http://www.w3.org/TR/WD-xsl"</FONT></A>&nbsp;&gt;</P>
<P>&lt;&nbsp;HEAD&nbsp;&gt;</P>
<P>&lt;&nbsp;TITLE&nbsp;&gt;个人简历&lt;&nbsp;/TITLE&nbsp;&gt;</P>
<P>&lt;&nbsp;/HEAD&nbsp;&gt;&lt;&nbsp;BODY&nbsp;&gt;&nbsp;</P>
<P>&lt;&nbsp;xsl:for-each&nbsp;select="resume"&nbsp;&gt;</P>
<P>&lt;&nbsp;P/&nbsp;&gt;</P>
<P>&lt;&nbsp;TABLE&nbsp;border="1"&nbsp;cellspacing="0"&nbsp;&gt;</P>
<P>&lt;&nbsp;CAPTION&nbsp;style="font-size:&nbsp;150%;&nbsp;font-weight:&nbsp;bold"&nbsp;&gt;</P>
<P>个人简历&nbsp;</P>
<P>&lt;&nbsp;/CAPTION&nbsp;&gt;</P>
<P>&lt;&nbsp;TR&nbsp;&gt;</P>
<P>&lt;&nbsp;TH&nbsp;&gt;姓名&lt;&nbsp;/TH&nbsp;&gt;&lt;&nbsp;TD&nbsp;&gt;&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="name"/&nbsp;&gt;&lt;&nbsp;/TD&nbsp;&gt;</P>
<P>&lt;&nbsp;TH&nbsp;&gt;性别&lt;&nbsp;/TH&nbsp;&gt;&lt;&nbsp;TD&nbsp;&gt;&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="sex"/&nbsp;&gt;&lt;&nbsp;/TD&nbsp;&gt;</P>
<P>&lt;&nbsp;TH&nbsp;&gt;生日&lt;&nbsp;/TH&nbsp;&gt;&lt;&nbsp;TD&nbsp;&gt;&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="birthday"/&nbsp;&gt;&lt;&nbsp;/TD&nbsp;&gt;</P>
<P>&lt;&nbsp;/TR&nbsp;&gt;</P>
<P>&lt;&nbsp;TR&nbsp;&gt;</P>
<P>&lt;&nbsp;TH&nbsp;&gt;技能&lt;&nbsp;/TH&nbsp;&gt;&lt;&nbsp;TD&nbsp;colspan="5"&nbsp;&gt;&lt;&nbsp;xsl:<I>value</I>-of&nbsp;select="skill"/&nbsp;&gt;&lt;&nbsp;/TD&nbsp;&gt;</P>
<P>&lt;&nbsp;/TR&nbsp;&gt;</P>
<P>&lt;&nbsp;/TABLE&nbsp;&gt;</P>
<P>&lt;&nbsp;/xsl:for-each&nbsp;&gt;</P>
<P>&lt;&nbsp;/BODY&nbsp;&gt;</P>
<P>&lt;&nbsp;/HTML&nbsp;&gt;</P>
<P>&nbsp;</P>]]></description>
</item><item>
<title><![CDATA[XSL-FO 学习笔记]]></title>
<link>http://blogger.org.cn/blog/more.asp?name=fanzhixin&amp;id=7985</link>
<author>fanzhixin</author>
<pubDate>2005/8/24 11:13:50</pubDate>
<description><![CDATA[
<DIV>先来看一段XSL-fo代码：<BR>&nbsp;<BR>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;<BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>&lt;fo:root xmlns:fo="<A href="http://www.w3.org/1999/XSL/Format"><FONT color=#045bf6>http://www.w3.org/1999/XSL/Format</FONT></A>"&gt;</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE dir=ltr>
<DIV>&lt;fo:layout-master-set&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;fo:simple-page-master master-name="A4"&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- Page template goes here --&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;/fo:simple-page-master&gt;<BR>&lt;/fo:layout-master-set&gt;</DIV>
<DIV dir=ltr>&nbsp; </DIV>
<DIV dir=ltr>&nbsp;&lt;fo:page-sequence master-reference="A4"&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- Page content goes here --&gt;<BR>&nbsp;&lt;/fo:page-sequence&gt;<BR></DIV></BLOCKQUOTE>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>&lt;/fo:root&gt;</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>下面来解释一下个部分的含义：</DIV>
<DIV dir=ltr>1，因为 xsl-fo 文件本身是 xml 文档，所以开头必须有 xml 声明：</DIV>
<DIV dir=ltr>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>2，&lt;fo:foot&gt; 标签是 FO 的根标签，所有内容必须包含这个标签内，并且同时声明命名空间&lt;fo:root xmlns:fo="<A href="http://www.w3.org/1999/XSL/Format"><FONT color=#045bf6>http://www.w3.org/1999/XSL/Format</FONT></A>"&gt;</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>3，&lt;fo:layout-master-set&gt; 装载文档模板</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>4，&lt;fo:simple-page-master&gt;&nbsp;装载单页模板，每个模板必须有唯一的名字，例：</DIV>
<DIV dir=ltr>&lt;fo:simple-page-master <FONT style="BACKGROUND-COLOR: #ffff00">master-name="A4"&gt;</FONT><BR></DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>5，&lt;fo:page-sequence&gt; 转载文档的内容，它的属性 master-reference&nbsp;来指定输出样式与上面&lt;fo:simple-page-master&gt; 模板的 master-name 属性相对应，例：</DIV>
<DIV dir=ltr>&lt;fo:page-sequence <FONT style="BACKGROUND-COLOR: #ffff00">master-reference="A4"&gt;</FONT><BR><BR>&nbsp;<STRONG><FONT style="BACKGROUND-COLOR: #c0c0c0">注：</FONT></STRONG><BR>&nbsp;&nbsp;&nbsp;&nbsp;master-reference 和 master-name 的属性不是预设的，你可以任意取值。</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr><FONT style="BACKGROUND-COLOR: #ffff00">FO 将打印页面分成若干矩形盒（areas）来表达显示输出:</FONT></DIV>
<DIV dir=ltr>&nbsp;&nbsp; 矩形盒包括</DIV>
<DIV dir=ltr>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</DIV>
<P dir=ltr>&nbsp;&nbsp;<STRONG><FONT style="BACKGROUND-COLOR: #ffff00">Pages &gt; Regions &gt; Block &gt; (Block)Line &gt; Inline</FONT></STRONG></P>
<P dir=ltr><STRONG><FONT style="BACKGROUND-COLOR: #ffff00">"&gt;" 代表包括关系</FONT></STRONG></P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>&nbsp;1，Pages</P>
<P dir=ltr>&nbsp;&nbsp;&nbsp;&nbsp; Pages 控制页面样式，因为打印时文档要分成好几页，浏览时是一大长页，所以页面样式有Pages 控制，</P>
<P dir=ltr>&nbsp;&nbsp;2，Regions </P>
<P dir=ltr>&nbsp;&nbsp;&nbsp; Regions 包括以下属性</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">region-body (the body of the page) （文本内容）</FONT> 
<LI>region-before (the header of the page) （表头） 
<LI>region-after (the footer of the page) （页角） 
<LI>region-start (the left sidebar) （左边界） 
<LI>region-end (the right sidebar) （右边届）</LI></UL>
<P dir=ltr>&nbsp;3，Block </P>
<P dir=ltr>&nbsp;&nbsp;&nbsp; Block 包含一些小的元素，比如段落，表格，列表==</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>4，Line</P>
<P dir=ltr>&nbsp;&nbsp;&nbsp; 定义文本行</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>5，Inline</P>
<P dir=ltr>&nbsp; 定义文本行中的文字（如 bullets, 单个文字, 图片==）</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>Pages&nbsp;内的嵌套规则</P>
<P dir=ltr>&nbsp; <FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:block&gt;嵌套于&lt;fo:flow&gt;嵌套于&lt;fo:page-sequence&gt;</FONT></P><PRE>&lt;fo:page-sequence&gt;
  &lt;fo:flow flow-name="xsl-region-body"&gt;
    &lt;fo:block&gt;
      &lt;!-- Output goes here --&gt;
    &lt;/fo:block&gt;
  &lt;/fo:flow&gt;
&lt;/fo:page-sequence&gt;</PRE>
<P dir=ltr>Pages 中的内容是由&lt;fo:flow&gt;元素组成的</P>
<P dir=ltr>&nbsp;XSL-fo 通过 &lt;fo:page-sequence&gt; 来定义输出页</P>
<P dir=ltr>&nbsp;每个输出页以 master 属性来定义输出样式</P>
<P dir=ltr>&nbsp;每个输出页都有&lt;fo:flow&gt;定义输出内容</P>
<P dir=ltr>&nbsp;每个输出页都在一个 sequence&nbsp;中</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>&lt;fo:flow&gt;&nbsp;包括一切需要打印在 page&nbsp;内的内容</P>
<P dir=ltr>如果一页填不下，相同的 page master 会用得到下一页，直到打印为止&nbsp;</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:flow&gt; 有 flow-name 属性，它的值决定内容的显示位置</FONT></P>
<P dir=ltr>&nbsp;合法的值</P>
<UL>
<LI>xsl-region-body (into the region-body) <FONT style="BACKGROUND-COLOR: #ffff00">（文本内容）</FONT> 
<LI>xsl-region-before (into the region-before) （表头） 
<LI>xsl-region-after (into the region-after) （页角） 
<LI>xsl-region-start (into the region-start) （左边界） 
<LI>xsl-region-end (into the region-end) （右边届）</LI></UL>
<P>XSL-fo 的页面模板</P>
<P dir=ltr>&nbsp;&nbsp; <FONT style="BACKGROUND-COLOR: #ffff00">XSL-fo 用页面模板（“page-master”）来定义输出，每个模板都必须有唯一的名字。</FONT></P>
<P dir=ltr>&nbsp;&nbsp;&nbsp; </P><PRE>------------------------------------------------------------</PRE><PRE>&lt;fo:simple-page-master master-name="intro"&gt;
  &lt;fo:region-body margin="5in" /&gt;
&lt;/fo:simple-page-master&gt;</PRE><PRE>&lt;fo:simple-page-master master-name="left"&gt;
  &lt;fo:region-body margin-left="2in" margin-right="3in" /&gt;
&lt;/fo:simple-page-master&gt;</PRE><PRE>&lt;fo:simple-page-master master-name="right"&gt;
  &lt;fo:region-body margin-left="3in" margin-right="2in" /&gt;
&lt;/fo:simple-page-master&gt;</PRE>
<P dir=ltr>&nbsp;-----------------------------------------------------------------------------------------------</P>
<P dir=ltr>在以上的代码中有三个&lt;fo:simple-page-master&gt; 标签，定义了三个模板，每个模板（“pagemaster”）都有不同的名字。</P>
<P dir=ltr>&nbsp;第一个用于介绍，第二个和第三个，用于奇数页和偶数页。</P>
<P dir=ltr>&nbsp;</P>
<P dir=ltr>模板(&lt;fo:simple-page-master&gt;)属性</P>
<P dir=ltr>&nbsp;&nbsp; </P>
<P dir=ltr>&nbsp;</P>
<P>
<TABLE style="FONT-SIZE: 120%" cellSpacing=0 width="100%" bgColor=#cccccc border=1>
<TBODY>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=5 width="100%" bgColor=#cccccc border=0>
<TBODY>
<TR>
<TD align=middle colSpan=3>Margin Top</TD></TR>
<TR>
<TD align=middle width="3%">
<P>M<BR>a<BR>r<BR>g<BR>i<BR>n</P>
<P>L<BR>e<BR>f<BR>t<BR>&nbsp;</P></TD>
<TD width="50%">
<TABLE style="FONT-WEIGHT: bold; FONT-SIZE: 100%" cellSpacing=0 cellPadding=10 width="100%" bgColor=#ffffff border=1>
<TBODY>
<TR>
<TD align=middle colSpan=3>REGION BEFORE</TD></TR>
<TR>
<TD align=middle width="15%">R<BR>E<BR>G<BR>I<BR>O<BR>N<BR><BR>S<BR>T<BR>A<BR>R<BR>T</TD>
<TD vAlign=center align=middle>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>REGION BODY</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P></TD>
<TD align=middle width="15%">R<BR>E<BR>G<BR>I<BR>O<BR>N 
<P>E<BR>N<BR>D</P></TD></TR>
<TR>
<TD align=middle colSpan=3>REGION AFTER</TD></TR></TBODY></TABLE></TD>
<TD align=middle width="3%">M<BR>a<BR>r<BR>g<BR>i<BR>n<BR><BR>R<BR>i<BR>g<BR>h<BR>t</TD></TR>
<TR>
<TD align=middle colSpan=3>Margin Bottom</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></P>
<P dir=ltr>页面大小</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">page-width 定义页宽</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">page-height&nbsp;定义页高</FONT>&nbsp;</LI></UL>
<P>&nbsp;页边空白</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </P>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-top&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义上边空白</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-bottom&nbsp;&nbsp; 定义下边空白</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-left&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义左边空白</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-right&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义右边空白</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义所有四边空白</FONT></LI>
<P><FONT style="BACKGROUND-COLOR: #ffff00"></FONT>&nbsp;</P>
<P>页面区域标签</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:region-body&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义主体区域</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:region-before&gt;&nbsp;&nbsp;&nbsp;&nbsp; 顶一定不区域（页眉） </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:region-after&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 定义底部区域(页角) </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:region-start&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;定义左部区域(左选项条) </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:region-end&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;定义右部区域(优选项条) </FONT></LI></UL>
<P><STRONG><FONT style="BACKGROUND-COLOR: #c0c0c0">注：</FONT></STRONG></P>
<P>&nbsp;&nbsp; region-before, region-after, region-start, region-end 是 region-body 的一部分，为了防止 body 的内容溢出到这些部分，你必须设置 body 的 margin 最少是他们的大小。</P>
<P>&nbsp;&nbsp;</P>
<P>&nbsp; <STRONG><FONT style="BACKGROUND-COLOR: #00ff00">例子：</FONT></STRONG></P><PRE>&lt;fo:simple-page-master master-name="A4"
 page-width="297mm" page-height="210mm"
 margin-top="1cm"   margin-bottom="1cm"
 margin-left="1cm"  margin-right="1cm"&gt;
  &lt;fo:region-body   margin="3cm"/&gt;
  &lt;fo:region-before extent="2cm"/&gt;
  &lt;fo:region-after  extent="2cm"/&gt;
  &lt;fo:region-start  extent="2cm"/&gt;
  &lt;fo:region-end    extent="2cm"/&gt;
&lt;/fo:simple-page-master&gt;</PRE>
<P>上面定义了一个名为 A4 的模板，宽297mm，高210mm, 四个页边空白未1mm,body 离页边的距离是3cm, 页的四边（页眉、页角、左边栏、右边栏）都为2cm</P>
<P>&nbsp;&nbsp; 可以计算 body 的大小，例</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; body 宽=297mm-2*(30mm)-2*10mm=217mm</P>
<P>&nbsp;</P>
<P>Block 标签，直接装载内容</P>
<P>&nbsp;&nbsp; 文档内容 &lt; Block &lt; Flow &lt; Page</P><PRE>&lt;fo:page-sequence&gt;
  &lt;fo:flow flow-name="xsl-region-body"&gt;
    &lt;fo:block&gt;
      &lt;!-- Output goes here --&gt;
    &lt;/fo:block&gt;
  &lt;/fo:flow&gt;
&lt;/fo:page-sequence&gt;</PRE><PRE><STRONG><EM>Block 的属性</EM></STRONG></PRE>
<P></FONT>
<TABLE cellSpacing=0 cellPadding=0 width="60%" bgColor=#ffffff border=1>
<TBODY>
<TR>
<TD align=middle width="100%">space before<BR></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="60%" bgColor=#a0a0a0 border=0>
<TBODY>
<TR>
<TD align=middle width="100%">margin<BR>
<TABLE cellSpacing=0 cellPadding=0 width="95%" bgColor=#b0b0b0 border=0>
<TBODY>
<TR>
<TD align=middle width="100%">border<BR>
<TABLE cellSpacing=0 cellPadding=0 width="90%" bgColor=#d0d0d0 border=0>
<TBODY>
<TR>
<TD align=middle width="100%">padding<BR>
<TABLE cellSpacing=0 cellPadding=0 width="90%" bgColor=#ffffff border=0>
<TBODY>
<TR>
<TD align=middle width="100%"><BR><BR><BR>content<BR><BR><BR><BR></TD></TR></TBODY></TABLE><BR></TD></TR></TBODY></TABLE><BR></TD></TR></TBODY></TABLE><BR></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="60%" bgColor=#ffffff border=1>
<TBODY>
<TR>
<TD align=middle width="100%">space after<BR></TD></TR></TBODY></TABLE></P>
<P>&nbsp;Block 的 Area 属性</P>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">space before and space after（Block 之间的距离）</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin （Block 边缘的空白）</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">border （Block 外部边框，可以设置大小和颜色）</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">padding （内容和边框之间的填充）</FONT></LI>
<P>&nbsp;</P>
<P>Block 的 Margin 属性</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-top </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-bottom </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-left </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">margin-right</FONT></LI></UL>
<P>Block 的 Border 属性</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; </P>
<P><FONT style="BACKGROUND-COLOR: #ffff00">Border 样式属性</FONT>:</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">border-style</FONT> 
<LI>border-before-style 
<LI>border-after-style 
<LI>border-start-style 
<LI>border-end-style 
<LI>border-top-style (same as border-before) 
<LI>border-bottom-style (same as border-after) 
<LI>border-left-style (same as border-start) 
<LI>border-right-style (same as border-end) </LI></UL>
<P><FONT style="BACKGROUND-COLOR: #ffff00">Border 颜色属性</FONT>:</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">border-color </FONT>
<LI>border-before-color 
<LI>border-after-color 
<LI>border-start-color 
<LI>border-end-color 
<LI>border-top-color (same as border-before) 
<LI>border-bottom-color (same as border-after) 
<LI>border-left-color (same as border-start) 
<LI>border-right-color (same as border-end) </LI></UL>
<P><FONT style="BACKGROUND-COLOR: #ffff00">Border 宽度属性</FONT>:</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">border-width </FONT>
<LI>border-before-width 
<LI>border-after-width 
<LI>border-start-width 
<LI>border-end-width 
<LI>border-top-width (same as border-before) 
<LI>border-bottom-width (same as border-after) 
<LI>border-left-width (same as border-start) 
<LI>border-right-width (same as border-end) </LI></UL>
<P>Block 的 Padding 属性</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">padding </FONT>
<LI>padding-before 
<LI>padding-after 
<LI>padding-start 
<LI>padding-end 
<LI>padding-top (same as padding-before) 
<LI>padding-bottom (same as padding-after) 
<LI>padding-left (same as padding-start) 
<LI>padding-right (same as padding-end) </LI></UL>
<P>&nbsp;Block 的 Background 属性&nbsp;&nbsp;</P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">background-color </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">background-image</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">background-repeat </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">background-attachment </FONT>(滚动或固定) </LI></UL>
<P><FONT color=#ff0000>*</FONT><FONT color=#000000>Block&nbsp;内容样式 属性&nbsp;</FONT></P>
<P><FONT color=#000000>&nbsp;&nbsp; &lt;fo:block font-size="12pt" font-family="sans-serif"&gt;<BR>This block of output will be written in a 12pt sans-serif font.<BR>&lt;/fo:block&gt;</P></FONT><FONT color=#000000>
<P><FONT style="BACKGROUND-COLOR: #ffff00">字体属性:</FONT></P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">font-family </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">font-weight</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">font-style</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">font-size</FONT> 
<LI>font-variant </LI></UL>
<P><FONT style="BACKGROUND-COLOR: #ffff00">文字格式:</FONT></P>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">text-align</FONT> 
<LI>text-align-last 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">text-indent </FONT>
<LI><FONT style="BACKGROUND-COLOR: #00ffff">start-indent </FONT>
<LI>end-indent 
<LI>wrap-option (defines word wrap) 
<LI>break-before (defines page breaks) 
<LI>break-after (defines page breaks) 
<LI>reference-orientation (defines text rotation in 90" increments) </LI></UL>
<P><FONT style="BACKGROUND-COLOR: #00ff00" color=#032e72>例：</FONT></P>
<P>&nbsp;</P><PRE>&lt;fo:block
    font-size="14pt" font-family="verdana" font-color="red"
    space-before="5mm" space-after="5mm"&gt;
W3Schools
&lt;/fo:block&gt;</PRE><PRE>&lt;fo:block
    text-indent="5mm"
    font-family="verdana" font-size="12pt"
    space-before="5mm" space-after="5mm"&gt;
At W3Schools you will find all the Web-building tutorials you
need, from basic HTML and XHTML to advanced XML, XSL, Multimedia
and WAP.
&lt;/fo:block&gt;</PRE><PRE>你可以看到，生成简单的文档需要很很复杂的代码。</PRE><PRE>一般 xsl-fo 文档不需要这么复杂的代码，我们可以通过 xslt 将格式化信息写入模板里，这样文档就会更整洁。</PRE><PRE>稍后我们会学怎样组合 xsl-fo 和 xslt.</PRE><PRE><STRONG><EM>XSL-FO 通过 List Blocks 来定义列表</EM></STRONG></PRE>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:list-block (包含整个列表)</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:list-item (包含每个项)</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:list-item-label (包括列表项的标签，比如数字、字符等等。) </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:list-item-body (包括列表的内容。比如 &lt;fo:block&gt; 对象。) </FONT></LI></UL>
<P><FONT style="BACKGROUND-COLOR: #00ff00" color=#032e72>例：</FONT></P>
<P>&nbsp;&lt;fo:list-block&gt;</P><PRE>&lt;fo:list-item&gt;
 &lt;fo:list-item-label&gt;
   &lt;fo:block&gt;*&lt;/fo:block&gt;
 &lt;/fo:list-item-label&gt;
 &lt;fo:list-item-body&gt;
   &lt;fo:block&gt;Volvo&lt;/fo:block&gt;
 &lt;/fo:list-item-body&gt;
&lt;/fo:list-item&gt;</PRE><PRE>&lt;fo:list-item&gt;
 &lt;fo:list-item-label&gt;
   &lt;fo:block&gt;*&lt;/fo:block&gt;
 &lt;/fo:list-item-label&gt;
 &lt;fo:list-item-body&gt;
   &lt;fo:block&gt;Saab&lt;/fo:block&gt;
 &lt;/fo:list-item-body&gt;
&lt;/fo:list-item&gt;</PRE><PRE>&lt;/fo:list-block&gt;</PRE><PRE><STRONG><EM> XSL-FO 通过 &lt;fo:table-and-caption&gt; 来定义表格</EM></STRONG></PRE><PRE><STRONG><EM> </EM></STRONG>XSL-FO 中的表格和 HTML 没太大的区别。 </PRE><PRE>XSL-FO 中的表格标签</PRE>
<UL>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-and-caption </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-caption</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-column</FONT> 
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-header </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-footer </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-body </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-row </FONT>
<LI><FONT style="BACKGROUND-COLOR: #ffff00">fo:table-cell</FONT> </LI></UL>
<P>&lt;fo:table-and-caption&gt; 用来定义表格，它有 &lt;fo:table&gt; 和 &lt;fo:caption&gt; 两个元素</P>
<P>&lt;fo:table&gt; 所包含的可选元素有<FONT style="BACKGROUND-COLOR: #ffff00"><STRONG>&lt;fo:table-column&gt;</STRONG> 、<STRONG>&lt;fo:table-header&gt;、&lt;fo:table-body&gt;、&lt;fo:table-footer&gt;</STRONG></FONT>元素。上面每个元素包含一个或多个<STRONG><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:table-row&gt;</FONT></STRONG>元素，同时又包含一个或多个<STRONG><FONT style="BACKGROUND-COLOR: #ffff00">&lt;fo:table-cell&gt;</FONT></STRONG>元素。</P>
<P><FONT style="BACKGROUND-COLOR: #00ff00">例：</FONT></P><PRE>&lt;fo:table-and-caption&gt;
&lt;fo:table&gt;
&lt;fo:table-column column-width="25mm"/&gt;
&lt;fo:table-column column-width="25mm"/&gt;

&lt;fo:table-header&gt;
  &lt;fo:table-row&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block font-weight="bold"&gt;Car&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block font-weight="bold"&gt;Price&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
  &lt;/fo:table-row&gt;
&lt;/fo:table-header&gt;

&lt;fo:table-body&gt;
  &lt;fo:table-row&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block&gt;Volvo&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block&gt;$50000&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
  &lt;/fo:table-row&gt;
  &lt;fo:table-row&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block&gt;SAAB&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
    &lt;fo:table-cell&gt;
      &lt;fo:block&gt;$48000&lt;/fo:block&gt;
    &lt;/fo:table-cell&gt;
  &lt;/fo:table-row&gt;
&lt;/fo:table-body&gt;

&lt;/fo:table&gt;
&lt;/fo:table-and-caption&gt;</PRE><PRE><STRONG><EM>XSL-FO 和 XSLT 合作</EM></STRONG></PRE><PRE><PRE><FONT style="BACKGROUND-COLOR: #00ff00">&lt;xsl:template match="header"&gt;
&lt;fo:block
    font-size="14pt" font-family="verdana" font-color="red"
    space-before="5mm" space-after="5mm"&gt;
    &lt;xsl:apply-templates/&gt;
&lt;/fo:block&gt;
&lt;/xsl:template&gt;

&lt;xsl:template match="paragraph"&gt;
&lt;fo:block
    text-indent="5mm"
    font-family="verdana" font-size="12pt"
    space-before="5mm" space-after="5mm"&gt;
    &lt;xsl:apply-templates/&gt;
&lt;/fo:block&gt;
&lt;/xsl:template&gt;</FONT></PRE></PRE><PRE><PRE><STRONG><EM><FONT style="BACKGROUND-COLOR: #ffff00">XSK-FO 参考</FONT></EM></STRONG></PRE><PRE><A href="http://www.w3schools.com/xslfo/xslfo_reference.asp"><FONT color=#045bf6>http://www.w3schools.com/xslfo/xslfo_reference.asp</FONT></A></PRE></PRE></FONT>]]></description>
</item>
</channel>
</rss>