Шрифт:
•
src
. Задает ссылку URI, определяющую внешний ресурс. Устанавливается в <uri-specification> | inherit
; •
start-indent
. Определяет расстояние от начального края прямоугольника содержимого области, содержащей блок, до начального края прямоугольника содержимого области этого блока. Устанавливается в <length> | inherit
; •
starts-row
. Определяет, начинает ли эта ячейка строку. Устанавливается в true | false
; •
text-align
. Определяет способ выравнивания встроенного содержимого блока. Устанавливается в start | center | end | justify | inside | outside | left | right | <string> | inherit
; •
text-decoration
. Задает параметры оформления, добавляемого тексту элемента. Устанавливается в none | [ [ underline | no-underline] || [ overline | no-overline ] || [ line-through | no-line-through ] || [ blink | no-blink ] ] | inherit
; •
text-indent
. Определяет выравнивание первой строки текста в блоке. Устанавливается в <length> | <percentage> | inherit
; •
text-shadow
. Задает разделенный запятыми список теневых эффектов, которые нужно применить к тексту элемента. Устанавливается в none | <color> || <length> <length> <length>? ,]* <color> || <length> <length> <length>?] | inherit
; •
top
. Определяет, насколько край содержимого смещен ниже верхнего края содержащего его блока. Устанавливается в <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).
Листинг 11.1. planets.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xml" href="#"?>
<PLANETS>
<PLANET COLOR="RED">
<NAME>Mercury</NAME>
<MASS UNITS="(Earth = 1)">.0553</MASS>
<DAY UNITS="days">58.65</DAY>
<RADIUS UNITS="miles">1516</RADIUS>
<DENSITY UNITS="(Earth = 1)">.983</DENSITY>
<DISTANCE UNITS="million miles">43.4</DISTANCE><!--B перигелии-->
</PLANET>
<PLANET COLOR="WHITE">
<NAME>Venus</NAME>
<MASS UNITS="(Earth = 1)">.815</MASS>
<DAY UNITS="days">116.75</DAY>
<RADIUS UNITS="miles">3716</RADIUS>