Página de XSL-FO

XSL-FO utiliza plantillas de página llamadas "Page Masters" para definir el diseño de la página.

Plantillas de página de XSL-FO

XSL-FO utiliza plantillas de página llamadas "Page Masters" para definir el diseño de la página. Cada plantilla debe tener un nombre único:

<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 márgen-izquierdo="3in" márgen-derecho="2in" />
</fo:simple-page-master>

En el ejemplo anterior, tres elementos <fo:simple-page-master> definen tres patrones diferentes. Cada patrón (page-master) tiene un nombre diferente.

El primer patrón se llama "intro" y puede usarse como plantilla de introducción de la página.

Los segundos y terceros patrones se denominan "left" y "right" y pueden usarse para las páginas de números de página pares e impares.

Tamaño de página XSL-FO

XSL-FO utiliza las siguientes propiedades para definir el tamaño de la página:

page-width
Definir el ancho de la página
page-height
Definir la altura de la página

Márgenes de página XSL-FO

XSL-FO utiliza las siguientes propiedades para definir los márgenes de la página:

márgen-superior
Definir el márgen superior
márgen-inferior
Definir el márgen inferior
márgen-izquierdo
Definir el márgen izquierdo
márgen-derecho
Definir el márgen derecho
márgen
Definir los márgenes de todos los lados

Regiones de página XSL-FO

XSL-FO utiliza los siguientes elementos para definir las regiones de la página:

region-body
Definir la región principal
region-before
Definir la región superior (encabezado de página)
region-after
Definir la región inferior (pie de página)
region-start
Definir la región de lado izquierdo (columna izquierda)
region-end
Definir la región de lado derecho (columna derecha)

Notas:region-before、region-after、region-start y region-end son parte de la región principal. Para evitar que el texto de la región principal cubra estas áreas, los márgenes de la región temática deben ser al menos del tamaño de otras regiones.

Ilustración:

Ejemplo XSL-FO

Este es un fragmento extraído de un documento XSL-FO:

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

El código anterior define un "Plantilla de maestro de página simple" con el nombre "A4".

El ancho de la página es de 297 mm, la altura es de 210 mm.

Los márgenes de las cuatro esquinas de la página son de 1 cm.

Los márgenes del sujeto son de 3 cm (todos los lados).

Las regiones before, after, start y end son de 2 cm.

El ancho del sujeto en el ejemplo anterior se puede calcular restando el ancho de la página, los márgenes laterales y los márgenes de region-body:

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

Notas:La región (region-start y region-end) no se ha calculado. Como se explicó anteriormente, estas regiones son parte del sujeto.