曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
XML 實用大全
第 567 頁
15.10 字符
fo:character 格式化對象使用輸出文檔中的不同字符來代替輸入文檔中特定字符或字符串。例如,可以使用此對象在美語
小數點與法語小數逗號之間相互轉換。character 特性指定使用什么字符來替換。例如,下面的模板規則將PASSWORD 元素
中的字符替換為*:
<xsl:template match="PASSWORD">
<fo:character character="*">
<xsl:value-of select="."/>
</fo:character>
</xsl:template>
但是,這種用法是很少見的。fo:character 元素的主要目的是為了便于格式化引擎可將各個字符和字形作為其自身的元素
來看待。如果不是編寫格式化引擎,那么就可以忽略此元素。
XML 實用大全
第 568 頁
15.11 序列
序列對內聯或塊級框的布局沒有任何特別的影響。它們只是放置格式化屬性(如font-style 或text-indent)的元素。
fo:display-sequence 格式化對象元素是一容器,它將塊級對象成組在一起。事實上,它只能保存塊級元素,如
fo:display-graphic 和fo:block。不能包含內聯元素和原文本。
fo:inline-sequence 格式化對象元素是將內聯對象成組在一起的容器。它不能包含塊級元素。例如,可以像下面這樣,使
用inline-sequence 元素將樣式加到頁腳的各部分中:
<fo:flow id="q2" flow-name="xsl-after">
<fo:block font-style="bold" font-size="10pt"
font-family="Arial, Helvetica, sans">
<fo:inline-sequence font-style="italic"
text-align="start">
The XML Bible
</fo:inline-sequence>
<fo:inline-sequence text-align="centered">
Page <fo:page-number/>
</fo:inline-sequence>
<fo:inline-sequence text-align="right">
Chapter 15: XSL Formatting Objects
</fo:inline-sequence>
</fo:block>
</fo:flow>
XML 實用大全
第 569 頁
15.12 腳注
fo:footnote 元素表示腳注。作者將fo:footnote 元素放在文本流中,腳注引用(1 或*)出現的地方。fo:footnote 元素由
fo:footnote-reference 和包含腳注文本的塊級元素組成。但是,只有腳注引用才是內聯式插入。格式化程序將注釋文本放
在此頁的后區(通常為頁腳)中。
例如,下面的腳注使用星號作為腳注標記,并引用JavaBeans, Elliotte Rusty Harold IDG Books, Foster City, 1998),
p. 147。使用標準的XSL 屬性(如font-size 和vertical-align)按照習慣方式來格式化注釋標記和文本。
<fo:footnote>
<fo:footnote-reference
font-size="smaller" vertical-align="super">
*
</fo:footnote reference>
<fo:block font-size="smaller">
<fo:inline-sequence
font-size="smaller" vertical-align="super">
*
</fo:inline-sequence>
<fo:inline-sequence
font-style="italic">JavaBeans</fo:inline-sequence>,
Elliotte Rusty Harold
(IDG Books, Foster City, 1998), p. 147
</fo:block>
</fo:footnote>
格式化對象符號集不提供自動編號和引用腳注的任何方法,但在變換樣式單中巧妙地使用xsl:number 即可做到這
一點。XSL 變換同樣也可以很容易地實現尾注(end note)。
15.13 浮動
fo:float 產生一個浮動框,定位于它所出現的區域的頂端。fo:float 最常用于圖形、圖表、表格,或需要出現在該頁某個
地方但對出現的位置無特別精確要求的其他外聯內容。例如,下面的代碼用于在一段落的中間嵌入帶有標題的浮動圖形:
XML 實用大全
第 570 頁
<fo:block>
Although PDF files are themselves ASC11 text,
this isn’t a book about PostScript, so there’s
nothing to be gained by showing you the exact
output of the above command. If you’re curious,
open the PDF file in any text editor.
Instead, Figure 15-1
<fo:float>
<fo:display-graphic
image=”3236-7fg150l.jpg”
height=”485px” width=”623px” />
<fo:block font-family=”Helvetica, sans”>
<fo:inline sequence font-weight=”bold”>
Figure 15-1 :
</fo:inline-sequence>
The PDF file displayed in Netscape Navigator
</fo:block>
</fo:float>
shows the rendered file displayed in
Netscape Navigator using the Acrobat plug-in.
</fo:block>
格式化程序盡可能地將圖形放在與fo:float 周圍的內容同頁的某個位置上,盡管這種情況并非永遠存在,但在此情況下,
格式化程序會將此對象移到后續頁上。在這些限制范圍內,可任意將圖形放在此頁的任何地方。
XML 實用大全
第 571 頁
15.14 XSL 格式化屬性
由字面意思可知,格式化對象相對來講完全沒有說明如何格式化內容。它們只是將內容擺放在各個絕對的框中,而這些框放
置在一頁中的各個特定部分。各種格式化對象的特性確定如何設置這些框中內容的樣式。
正像已經介紹的那樣,大約有200 個獨立的格式化屬性。并非所有的屬性都可以與所有的元素關聯。例如,指定
fo:display-graphic 的font-style 的特點就不很多。但是,大多數屬性都可以用于多種格式化對象元素(只有少數幾個不
能,如href 和provisional-label-separation,在上面已與使用它們的格式化對象一起討論過了)。當一個屬性為多個格
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML實用大全(161)