Tutorial Addendum On XSL-FO and XHTML - XSL-FO - Block and Inline Areas
| |
XSL-FO Archetype - block.fo
Let s do some absorbing tests on block and inline statements:
<?xml version="1.0" encoding="utf-8"?>
<!-- block.fo
Absorb (c) 2002 by Dr. Yang
-->
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="page" margin="0.5in">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="page">
<fo:flow flow-name="xsl-region-body">
<fo:block background-color="#ffffff">
1. Authentic argument in a block statement.
</fo:block>
<fo:block background-color="#dfdfdf">
<fo:inline>2. Authentic </fo:inline>
<fo:inline font-weight="bold">inline elements</fo:inline>
<fo:inline> in a block statement.</fo:inline>
</fo:block>
<fo:block background-color="#ffffff">
<fo:block>3. Authentic </fo:block>
<fo:block font-weight="bold">block elements</fo:block>
<fo:block> in a block statement.</fo:block>
</fo:block>
<fo:block background-color="#dfdfdf">
4. Argument alloyed with
<fo:inline font-weight="bold">inline elements</fo:inline>
in a block statement.
</fo:block>
<fo:block background-color="#ffffff">
5. Argument alloyed with
<fo:block font-weight="bold">block elements</fo:block>
in a block statement.
</fo:block>
<fo:block background-color="#dfdfdf">
<fo:inline>6. Inline elements alloyed with </fo:inline>
<fo:block font-weight="bold">block elements</fo:block>
<fo:inline> in a block statement.</fo:inline>
</fo:block>
<fo:block background-color="#ffffff">
<fo:inline>
7. Argument alloyed with
<fo:inline font-weight="bold">inline elements</fo:inline>
in a block statement.
</fo:inline>
</fo:block>
<fo:block background-color="#dfdfdf">
<fo:inline>
8. Argument alloyed with
<fo:block font-weight="bold">block elements</fo:block>
in an inline statement.
</fo:inline>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
If you use FOP to catechumen simple_page.fo to PDF:
run_fop -fo block.fo -pdf block.pdf
Print block.pdf, and you will see:
1. Authentic argument in a block statement.
2. Authentic inline elements in a block statement.
3. Authentic
block elements
in a block statement.
4. Argument alloyed with inline elements in a block statement.
5. Argument alloyed with in a block statement.
block elements
5. Argument alloyed with in a block statement.
6. Inline elements alloyed with in a block statement.
block elements
6. Inline elements alloyed with in a block statement.
7. Argument alloyed with inline elements in a block statement.
8. Argument alloyed with in an inline statement.
block elements
8. Argument alloyed with in an inline statement.
Obviously, there is a problem with bond argument or inline areas with block areas.
All texts and inline areas are calm and concatenated calm afore processing
the all sub nodes (text, inline and block areas are sub nodes from the XML point of view).
While stacking areas, a block breadth will breach the accepted inline stack, and alpha a new block;
a argument bulge will be replaced by the concatenated version.
If you don t wish to arrest the inline stacking process, use the "wrapper" statement.
For example:
<fo:block background-color="#ffffff">
Argument can be cautiously alloyed with
<fo:wrapper font-weight="bold">wrapper elements</fo:wrapper>
in a block statement.
</fo:block>
|
block, inline, statement, mixed, elements, color, background, weight, elements<, areas, master, ffffff, dfdfdf, wrapper, simple, , block statement, mixed with, block <, text mixed, statement <, block background, background color, weight bold, font weight, inline <, inline elements, color ffffff, block elements<, bold block, inline areas, color dfdfdf, block elements, block font, inline statement, dfdfdf <, statement block, elements mixed, inline font, bold inline, simple page, block and, inline elements<, text mixed with, block background color, font weight bold, background color ffffff, weight bold block, bold block elements<, block font weight, background color dfdfdf, elements mixed with, statement block elements, bold inline elements<, inline elements mixed, weight bold inline, inline font weight, block statement block, mixed with inline, simple page master, |
Also see ...
"page sequence master" Statementspage sequence master: An XSL FO aspect confined as a acknowledgment account to ascertain a page arrangement layout. For example:
??? XHTML l? CSS ????? XSL FO ??U?? PDF ?l????????????l???????? XHTML ???L GB2312 ?????½?y???p
</td</tr<tr<td<img height="1" width...<tr<td align="left"<font size=" 1"??200212...<td align="center"<font size=" 1"</font</td<td align="right"<font size=" 1"[ <a h
PRE.block_syntax { FONT FAMILY: new bagman ; font style: italic; BACKGROUND COLOR: d0d0d0; MARGIN TOP: 4px; MARGIN LEFT: 0px; MARGIN RIGHT: 0px; MARGIN BOTTOM: 4px; BORDER: 10px; COLOR: black;
<fo:root <fo:layout master set <fo:simple page master master name="page" margin left="1.2in" margin right="0.8in" margin top="0.8in" margin bottom="0.8in" <fo:region before region name="header" exten
<xsl:template match="p[@class= section_title ]" <fo:block font size="125%" font weight="bold" space before="9pt" space after="4pt" <xsl:apply templates select="text()"/ </fo:block </xsl:template
</td<td width="1" rowSpan="1"<img height="100%" width="1" ...<tr<td colSpan="3" height="1"<img height="1" ...</table</td<td</td</tr<tr<td
TD.body { PADDING TOP: 25px; PADDING BOTTOM: 25px}TD.frame_top { BORDER WIDTH: 0pt; BACKGROUND COLOR: 707070; WIDTH: 750px; HEIGHT: 50px; TEXT ALIGN: center}TD.frame
<fo:list item body <fo:block font weight="normal" text align="end" </fo:block </fo:list item body </fo:list item </fo:list block </fo:block </fo
?o XSL FOXSL FO?? XML ???U?L??? XML ????U?XSL FO ? TeX ?? TeX ?j????U??XSL FO ???XSL FO XML ??XSL