XSL-FO sida

XSL-FO använder en sidmall som kallas "Page Masters" för att definiera sidlayouten.

XSL-FO sidmall

XSL-FO använder en sidmall som kallas "Page Masters" för att definiera sidlayouten. Varje mall måste ha ett unikt namn:

<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>

I det ovanstående exemplet definierar tre <fo:simple-page-master>-element tre olika mallar. Varje mall (page-master) har ett annat namn.

Den första mallen heter "intro". Den kan användas som en mall för introduktionssidor.

Den andra och tredje mallen heter "left" och "right". De kan användas för sidor med jämna och ojämna sidnummer.

XSL-FO sidstorlek

XSL-FO använder följande egenskaper för att definiera sidstorlek:

page-width
Definiera sidans bredd
page-height
Definiera sidans höjd

XSL-FO sidmarginaler

XSL-FO använder följande egenskaper för att definiera sidmarginaler:

margin-top
Definiera övre marginal
margin-bottom
Definiera nedre marginal
margin-left
Definiera vänstermarginal
margin-right
Definiera högermarginal
margin
Definiera marginaler för alla sidor

XSL-FO sidområden (Page Regions)

XSL-FO använder följande element för att definiera sidans områden:

region-body
Definiera huvudområdet
region-before
Definiera övre område (sidhuvud)
region-after
Definiera nedre område (sidfot)
region-start
Definiera vänsterområde (vänsterkolumn)
region-end
Definiera högerområde (högerkolumn)

Kommentar:region-before、region-after、region-start och region-end är en del av huvudområdet. För att undvika att text i huvudområdet överlappar dessa områden, måste marginalen för huvudområdet minst vara lika stor som storleken på andra områden.

Illustration:

XSL-FO-exempel

Detta är en fragment som har extraherats från en viss XSL-FO-dokument:

<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>

Koden definierar ett "Simple Page Master Template" med namnet "A4".

Sidans bredd är 297 mm, höjden är 210 mm.

Marginalerna på sidans fyra sidor är 1 cm.

Huvudets marginaler är 3 cm (alla fyra sidor).

before, after, start och end områden är 2 cm breda.

Bredden på huvudet i det ovanstående exemplet kan beräknas genom att subtrahera sidans bredd och sidmarginaler samt marginalerna för region-body:

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

Kommentar:region (region-start och region-end) har inte beräknats in. Som tidigare förklarat är dessa områden (regioner) en del av huvudet.