XSL-FO Tutorials - Herong's Tutorial Examples - v2.25, by Herong Yang
What Is XSL Area Model
This section describes XSL-FO area model, which is a key concept used by XSL to organize and render formatting objects as a tree of areas on the presentation medium.
What Is Area Model? - Area model is a key concept used by XSL to organize and render formatting objects as a tree of areas on the presentation medium. The XSL area model has the following main features:
Area? - A rectangular area with formatting properties on the presentation medium that represents a unit of formatted information. Multiple smaller areas can be put together to create a larger area.
Area Stacking - A sequence of areas of the same type that are stacked either inline-wise, called Inline-Stacking, or block-wise, called Block-Stacking, to create a new area.
Inline Stacking - A process of stacking formatted information areas inline-wise to form a new area like a line. For example, in English writing style, glyph areas are stacked one by one horizontally from left to right to form a new line of text.
Block Stacking - A process of stacking formatted information areas block-wise to form a new area like a page. For example, in English writing style, paragraph areas are stacked one by one vertically from top to bottom to form a new page area.
Area Tree - An ordered tree of areas to represent a large area constructed with a group of smaller areas. Form example, a page area can be represented as area tree with a stack of paragraph areas as its child nodes. Each child node, a paragraph area is a stack of line areas as it child nodes. And so on.
The diagram below illustrates how a page area can be represented as an area tree, where first level child nodes represent the paragraph area stack to construct the page area. Second level child nodes represent line area stacks to construct individual paragraph areas.
Table of Contents
Apache™ FOP (Formatting Objects Processor)
Inline Stacking and Block Stacking
XSL-FO Document Basics and Examples
Block-Level Formatting Objects
Inline-Level Formatting Objects
Including Graphics in XSL-FO document
Floating Blocks - "float" and "footnote"
Hyperlinks, Table of Contents and Indexes
Headers and Footers using "static-content"
Font Attributes and Font Families
Apache FOP Font Configurations