Выбрать главу

• <fo:multi-switch>. Переключает между двумя или более поддеревьями форматирующих объектов;

• <fo:multi-toggle>. Используется внутри элемента <fo:multi-case> для переключения на другой <fo:multi-case>;

• <fo:page-number>. Указывает номер текущей страницы;

• <fo:page-number-citation>. Ссылается на номер страницы, содержащей заданный форматирующий объект;

• <fo:page-sequence>. Определяет способ создания последовательности страниц в документе;

• <fo:page-sequence-master>. Содержит последовательности шаблонов страниц, используемых для создания последовательностей страниц;

• <fo:region-after>. Обозначает область, расположенную после области <fo:region-body>;

• <fo:region-before>. Обозначает область перед областью <fo:region-body>;

• <fo:region-body>. Обозначает область в центре <fo:simple-page-master>;

• <fo:region-end>. Обозначает область в конце области <fo:region-body>;

• <fo:region-start>. Обозначает область, начинающую область <fo:region-body>;

• <fo:repeatable-page-master-alternatives>. Задает повторяющиеся экземпляры набора альтернативных шаблонов страниц;

• <fo:repeatable-page-master-reference>. Обозначает подпоследовательность повторяющихся экземпляров единственного шаблона страницы;

• <fo:retrieve-marker>. Используется вместе с <fo:marker> для создания колонтитулов или сносок в рабочем режиме;

• <fo:root>. Узел документа, отформатированного при помощи XSL;

• <fo:simple-link>. Задает начальное место в простой ссылке;

• <fo:simple-page-master>. Определяет форму страницы, которая может быть разделена на области (до пяти областей);

• <fo:single-page-master-reference>. Определяет подпоследовательность, образованную из единственного экземпляра единственного шаблона страницы;

• <fo:static-content>. Содержит последовательность форматирующих объектов, которые будут отображены в одной области или повторены в областях в одной или более страницах в последовательности страниц. Чаще всего применяется для повторяющихся колонтитулов и сносок;

• <fo:table>. Создает таблицу. Содержит такие элементы, как <fo:table-column> и <fo:table-body>;

• <fo:table-and-caption>. Содержит данные и заголовок таблицы;

• <fo:table-body>. Определяет содержимое тела таблицы. Содержит такие элементы, как <fo:table-row>;

• <fo:table-caption>. Задает форматирующие объекты уровня блока, в которых содержится заголовок таблицы;

• <fo:table-cell>. Помещает данные в ячейки таблицы;

• <fo:table-column>. Задает свойства ячеек в одном столбце таблицы;

• <fo:table-footer>. Определяет содержимое нижнего колонтитула таблицы;

• <fo:table-header>. Определяет содержимое верхнего колонтитула таблицы;

• <fo:table-row>. Связывает ячейки таблицы в строки. Содержит элементы <fo:table-cell>;

• <fo:title>. Задает заголовок документа;

• <fo:wrapper>. Задает свойства для группы форматирующих объектов;

Каждый из этих элементов также поддерживает одно или несколько форматирующих свойств XSL-FO.

Форматирующие свойства XSL-FO

Форматирующие свойства XSL-FO настраивают действия перечисленных в предыдущем разделе форматирующих объектов; работайте с ними в документах XSL-FO так же, как с атрибутами элементов. Например, вот как я установил семейство (family), размер (size) и насыщенность (weight;) шрифта для текста в блоке:

<fo:block color="blue" font-family="Times"

 font-size="36pt" font-weight="bold">

 Hello from XSL-FO!

</fo:block>

Полный список свойств XSL-FO и их описание можно найти по адресу www.w3.org/TR/xsl/slice7.html. Многие свойства XSL-FO унаследованы из спецификации для каскадных таблиц стилей версии 2, CSS2, которую вы можете найти по адресу www.w3.org/TR/REC-CSS2.

В следующем списке перечислен ряд наиболее распространенных свойств XSL-FO. Полный список свойств (весьма длинный) приведен в Приложении Б. В списке используется следующий синтаксис, соответствующий спецификации XSL-FO:

• <> обозначает единицы значений (см. таблицу 11.1) или свойства (например, <color>), которые уже были определены;

• | означает вариант выбора, использовать можно только один из них;

• || означает вариант выбора, можно использовать один или несколько вариантов в любом порядке;

• [] означает групповые инструкции, вычисляемые во многом так же, как и математические выражения;

• * означает, что предыдущий терм может встречаться ноль или более раз;

• + означает, что предыдущий терм может встречаться один или более раз;

• ? означает, что предыдущий терм необязателен;

• {} окружают пары чисел, задающие минимальное и максимальное число раз встречи терма (как в {1, 4});

Во многих свойствах XSL-FO определен определенный формат для присваиваемых им значений, как, например <color> или <angle>, — эти форматы и их описание перечислены в табл. 11.1.