XSLT
Шрифт:
<?xml version="1.0" encoding="UTF-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fо:layout-master-set>
<fo:simple-page-master margin-right="20mm" margin-left="20mm"
margin-bottom="10mm" margin-top="10mm" page-width="300mm"
page-height="400mm" master-name="page">
<fo:region-body margin-right="0mm" margin-left="0mm"
margin-bottom="10mm" margin-top="0mm"/>
.
.
.
Обратите
<!-- такие как этот -->
. Отметьте также, что элементы <fo:simple-page-master>
и <fo:region-body>
обладают такими атрибутами, как margin-right
и page-height
. В XSL-FO такие атрибуты называются свойствами, и их весьма много — на момент написания книги около 240. Например, вот как можно создать блок XSL-FO — прямоугольную область отображения — в котором выводится текст «Welcome to XSL formatting» (Добро пожаловать в форматирование XSL) шрифтом sans-serif
размером 36 пунктов. Я использую форматирующий объект <fo:block>
и свойства XSL-FO font-family
— line-height
(задающее высоту блока) и font-size
: <fo:block font-family="sans-serif" line-height="48pt" font-size="36pt">
Welcome to XSL formatting
</fo:block>
В этом разделе мы рассмотрим объекты XSL-FO, а в следующем — свойства XSL-FO для работы с ними. При помощи объектов и свойств XSL-FO вы можете создавать документы XSL-FO, которым обычно дается расширение
.fo
. Процессор fop преобразует такие документы в формат .pdf
. Все форматирующие объекты XSL-FO с описанием перечислены на www.w3.org/TR/xsl/slice6.html. Во время создания книги существуют такие объекты (с работой многих из них мы познакомимся в этой и следующей главах):
•
<fo:bidi-override>
. Перекрывает двунаправленный алгоритм Unicode (этот алгоритм используется в документах на нескольких языках); •
<fo:block>
. Создает блок отображения для формирования прямоугольных областей, используемых при выводе абзацев, заголовков, подписей к рисункам и таблицам и т.д.; •
<fo:block-container>
. Создает контейнер блоков, который затем можно помещать в любом месте; •
<fo:character>
. Представляет единственный символ; •
<fo:color-profile>
. Создает цветовой профиль для таблицы стилей, с которым потом можно работать при помощи цветовых функций (подробности см. на www.w3.org/TR/xsl/slice5.html#expr-color-functions); •
<fo:conditional-page-master-reference>
. Задает шаблон страницы (page-master), который следует использовать при выполнении указанных условий; •
<fo:declarations>
. Создает глобальные
•
<fo:external-graphic>
. Добавляет в документ графику (графические данные располагаются за пределами результирующего документа, но могут быть интегрированы в документы PDF такими процессорами, как fop); •
<fo:float>
. Указывает, что определенное содержимое будет форматироваться в отдельной, незакрепленной области в начале страницы или сдвинутой к одной из сторон; •
<fo:flow>
. Обрабатывает поток текста, отображаемый в документе. Накладывает блокировку на «поток» встроенных областей, когда они заменяются в документе; •
<fo:footnote>
. Задает ссылку на сноску, а также саму связанную с ней сноску; •
<fo:footnote-body>
. Определяет содержимое сноски; •
<fo:initial-property-set>
. Задает форматирующие свойства для начальной строки блока; •
<fo:inline>
. Создает встроенную область (inline area). Встроенные области часто применяются для форматирования определенной части текста в блоке; •
<fo:inline-container>
. Создает контейнер для встроенных объектов, позволяя обрабатывать их все вместе; •
<fo:instream-foreign-object>
. Используется для вставки в документ встроенной графики или другого объекта; •
<fo:layout-master-set>
. Задает оболочку для всех шаблонов, используемых в документе; •
<fo:leader>
. Создает строку из повторяющегося символа или образец из символов для разделения двух текстовых форматирующих объектов; •
<fo:list-block>
. Создает форматированный список, — с ним мы познакомимся в следующей главе; •
<fo:list-item>
. Задает метку и тело элемента списка; •
<fo:list-item-body>
. Задает содержимое тела элемента списка; •
<fo:list-item-label>
. Задает содержимое метки элемента списка; •
<fo:marker>
. Применяется вместе с <fo:retrieve-marker> для создания колонтитулов или сносок по ходу работы; •
<fo:multi-case>
. Задает объекты, которые показывает или скрывает родительский элемент <fo:multi-switch>
; •
<fo:multi-properties>
. Позволяет переключаться между двумя или более наборами свойств; •
<fo:multi-property-set>
. Задает альтернативный набор свойств; •
<fo:multi-switch>
. Переключает между двумя или более поддеревьями форматирующих объектов; •
<fo:multi-toggle>
. Используется внутри элемента <fo:multi-case>
для переключения на другой <fo:multi-case>
; •
<fo:page-number>
. Указывает номер текущей страницы; •
<fo:page-number-citation>
. Ссылается на номер страницы, содержащей заданный форматирующий объект;
Поделиться:
Популярные книги
Вечный. Книга VII
7. Вечный
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Гримуар темного лорда II
2. Гримуар темного лорда
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Лейтенант. Назад в СССР. Книга 8. Часть 1
8. Второй шанс
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Менталист. Эмансипация
1. Выиграть у времени
Фантастика:
альтернативная история
7.52
рейтинг книги
Точка Бифуркации IV
4. ТБ
Фантастика:
героическая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Сфирот
8. Стеллар
Фантастика:
боевая фантастика
рпг
6.92
рейтинг книги
Шайтан Иван 4
4. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
8.00
рейтинг книги
Запечатанный во тьме. Том 1. Тысячи лет кача
1. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
На границе империй. Том 9. Часть 2
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Изгои
5. Глэрд
Фантастика:
фэнтези
боевая фантастика
5.00
рейтинг книги
Технарь
1. Технарь
Фантастика:
космическая фантастика
попаданцы
7.13
рейтинг книги
Чехов
1. Адвокат Чехов
Фантастика:
фэнтези
боевая фантастика
альтернативная история
5.00
рейтинг книги
Полет аистов
Детективы:
триллеры
8.88
рейтинг книги
Эпоха Опустошителя. Том VIII
8. Вечное Ристалище
Фантастика:
аниме
фэнтези
попаданцы
5.00