. Определяет, насколько край содержимого смещен ниже верхнего края содержащего его блока. Устанавливается в
<length> | <percentage> | auto | inherit
;
•
vertical-align
. Определяет вертикальное расположение.
Устанавливается в
baseline | middle | sub | super | text-top | text-bottom [ <percentage> | <length> | top | bottom | inherit
;
•
visibility
. Определяет, будут ли отображены генерируемые элементом прямоугольники. Устанавливается в
visible | hidden | collapse | inherit
;
•
white-space
. Определяет способ обработки символов-разделителей (white-space) внутри элемента. Устанавливается в
normal | pre | nowrap | inherit
;
•
white-space-collapse
. Задает способ обработки последовательных символов-разделителей. Устанавливается в
false | true | inherit
;
•
width
. Задает ширину содержимого прямоугольников, созданных элементами уровня блока и замененными элементами. Устанавливается в
<length> | <percentage> | auto | inherit
;
•
wrap-option
. Определяет наличие оболочки строк форматирующего объекта. Устанавливается в
no-wrap | wrap | inherit
.
Не все свойства применимы ко всем объектам XSL-FO. В этой и следующей главах я буду явно перечислять свойства, применимые к используемым мной объектам. Заметьте также, что пока что ни в одном процессоре XSL-FO не реализованы все эти свойства.
Мы вкратце рассмотрели структуру XSL-FO, теперь пора перейти к практике: сейчас мы подробно рассмотрим работу примера.
Форматирование документа XML
Чтобы посмотреть, как XSL-FO может форматировать данные XML, я воспользуюсь planets.xml (листинг 11.1).
В этом первом примере я создам таблицу стилей XSLT для форматирования файла
planets.xml
и преобразования его в
planets.fo
, использующую форматирующие объекты для задания шрифтов, стилей и цветов. Затем я воспользуюсь процессором fop и преобразую
planets.fo
в файл
planets.pdf
, который показан на рис. 11.1.
Рис. 11.1. Документ PDF, созданный при помощи форматирующих объектов
Как видно на рис. 11.1, в нашем первом примере я применил средства форматирования текста: установку шрифта, подчеркивание текста, выделение текста курсивом и даже установка цвета текста. (Хотя этого и не видно на рис. 11.1, заголовок «The Planets Table» выделен светло-голубым цветом.)
Первый шаг при создании документа на рис. 11.1 — применить таблицу стилей XSLT для преобразования
planets.xml
в
planets.fo
.
Преобразование в XSL-FO при помощи таблицы стилей XSLT
В этой главе я создам таблицу стилей для преобразования
planets.xml
в
planets.fo
. Я буду создавать таблицу шаг за шагом; для справки я приведу ее окончательный вид (листинг 11.2).