Страница XSL-FO

XSL-FO использует страницу шаблона с именем "Page Masters" для определения макета страницы.

Страница шаблона XSL-FO

XSL-FO использует страницу шаблона с именем "Page Masters" для определения макета страницы. Каждый шаблон должен иметь уникальное имя:

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

В приведенном выше примере три элемента <fo:simple-page-master> определяют три различных шаблона. Каждый шаблон (page-master) имеет разное имя.

Первый шаблон называется "intro". Он может быть использован в качестве шаблона для introductory страниц.

Второй и третий шаблоны называются "left" и "right". Они могут быть использованы для страниц с четными и нечетными номерами страниц.

Размеры страницы XSL-FO

XSL-FO использует следующие атрибуты для определения размеров страницы:

page-width
Определение ширины страницы
page-height
Определение высоты страницы

Отступы страницы XSL-FO

XSL-FO использует следующие атрибуты для определения отступов страницы:

margin-top
Определение верхнего отступа
margin-bottom
Определение нижнего отступа
margin-left
Определение левого отступа
margin-right
Определение правого отступа
margin
Определение отступов всех сторон

Области страницы XSL-FO (Page Regions)

XSL-FO использует следующие элементы для определения областей страницы:

region-body
Определение основной области
region-before
Определение верхней области (заголовка)
region-after
Определение нижней области (подвала)
region-start
Определение левой области (левой колонки)
region-end
Определение правой области (правой колонки)

Комментарий:region-before, region-after, region-start и region-end являются частью основной области. Чтобы избежать того, чтобы текст основной области перекрывал эти области, отступы темы должны быть не менее размера других областей.

Схема:

Пример XSL-FO

Это фрагмент, извлеченный из документа 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>

Следующий код определяет "Простую шаблонную страницу" с именем "A4".

Ширина страницы составляет 297 мм, высота 210 мм.

Отступы всех четырех сторон страницы равны 1 см.

Отступы主要内容 равны 3 см (все четыре стороны).

Область before, after, start и end составляет 2 см.

Ширина主要内容 в примере можно вычислить, вычтя ширину страницы, отступы слева и справа, а также отступы region-body:

297мм - (2 x 1см) - (2 x 3см) = 297мм - 20мм - 60мм = 237мм.

Комментарий:Регион (region-start и region-end) не был учтен. Как было объяснено ранее, эти регионы (region) являются частью主要内容.