XSL-FO region-bodyObject

XSL-FO 参考手册XSL-FO Reference Manual

Definition and Usage

The <fo:region-body> object defines the main region of a page.

XSL-FO uses the following elements to define the regions of a page:

  • <fo:region-body> defines the main region
  • <fo:region-before> defines the top region (header)
  • <fo:region-after> defines the bottom region (footer)
  • <fo:region-start> defines the left region (left sidebar)
  • <fo:region-end> defines the right region (right sidebar)

Note:region-before, region-after, region-start, and region-end are all part of region-body. To prevent text within region-body from overlapping text in other regions, the margin of region-body must be at least the same size as the dimensions of the four sub-regions mentioned above.

Tip:To provide multiple columns in the region-body area, the column-count attribute must be set to a value greater than 1!/p>

Note:If the value of the overflow attribute is "scroll", you cannot set the column-count attribute to greater than 1!

Note:According to the XSL-FO 1.0 Recommendation, the padding and border-width attributes must be 0.


Syntax

<fo:region-body>
<!--
Contents:EMPTY
-->
</fo:region-body>

Attributes

Attributes [A-B] Attributes [C-Z]
background-attachment clip
background-color column-count
background-image column-gap
background-repeat display-align
background-position-horizontal end-indent
background-position-vertical margin-bottom
border-after-color margin-left
border-after-style margin-right
border-after-width margin-top
border-before-color overflow
border-before-style padding-after
border-before-width padding-before
border-bottom-color padding-bottom
border-bottom-style padding-end
border-bottom-width padding-left
border-end-color padding-right
border-end-style padding-start
border-end-width padding-top
border-left-color region-name
border-left-style reference-orientation
border-left-width space-after
border-right-color space-before
border-right-style writing-mode
border-right-width
border-start-color
border-start-style
border-start-width
border-top-color
border-top-style
border-top-width

Example 1

XSL-FO uses page templates called "Page Masters" to define page layout. Each template must have a unique name:

<fo:simple-page-master master-name="intro">
<fo:region-body margin="5in" />
</fo:simple-page-master>

<fo:simple-page-master master-name="left">
<fo:region-body margin-left="2in" margin-right="3in" />
</fo:simple-page-master>

<fo:simple-page-master master-name="right">
<fo:region-body margin-left="3in" margin-right="2in" />
</fo:simple-page-master>

In the example above, three <fo:simple-page-master> elements define three different templates. Each template (page-master) has a different name.

The first template is named "intro". It can be used as a template for the introduction page.

The second and third templates are named "left" and "right". They can be used as page templates for even and odd numbered pages.

Example 2

This is a fragment extracted from an XSL-FO document:

<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">
<fo:region-body margin="3cm"/>
<fo:region-before extent="2cm"/>
<fo:region-after extent="2cm"/>
<fo:region-start extent="2cm"/>
<fo:region-end extent="2cm"/>
</fo:simple-page-master>

The code above defines a "Simple Page Master Template" named "A4".

The page width is 297 millimeters and the height is 210 millimeters.

The four page margins (top margin, bottom margin, left margin, right margin) are all 1 centimeter.

The margin of the body is 3 centimeters (on all four sides).

The before, after, start, and end regions of the body are all 2 centimeters.

The width of the body in the example above can be calculated by subtracting the left and right margins and the margins of region-body from the page width:

297mm - (2 x 1cm) - (2 x 3cm) = 297mm - 20mm - 60mm = 217mm

Note that the regions (region-start and region-end) are not included in the calculation. As explained earlier, these regions are part of the body.


XSL-FO 参考手册XSL-FO Reference Manual Other Extensions