форматирующих объектов; работайте с ними в документах 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.
Таблица 11.1. Форматы спецификации XSL-FO
Формат | Описание |
---|---|
<absolute-size> | Абсолютные размеры шрифта; могут быть xx-small, x-small, small (маленький), medium (средний), large (крупный), x-large, xx-large |
<angle> | Углы; могут измеряться в deg (градусах), grad (градах) или rad (радианах) |
idctlpar<border-style> | Граница прямоугольника, может принимать значения none (нет), dotted (пунктиром), dashed (штрихами), solid (непрерывная), double (двойная), groove (канавкой), ridge (с толстой кромкой), inset (вложенная) или outset (вынесенная) |
<border-width> | Устанавливает ширину границы; может принимать значения thin (тонкая), medium (средняя), thick (толстая) или конкретного размера |
<color> | Цвет; может быть задан предопределенным значением цвета или тройным цветовым значением RGB, как в HTML, — например, «FFFFFF» для белого цвета |
<country-language> | Устанавливается в значение <language> (см. <language>) |
<family-name> | Название семейства шрифтов — такого, как Arial, Times New Roman или Courier |
<frequency> | Значения частоты; единицами измерения могут быть Hz (Гц) или KHz (кГц) |
<generic-family> | Обобщенные названия шрифтов, применяемых в качестве последней попытки, если браузер не может найти определенный шрифт. Например, serif (браузер должен выбрать шрифт serif), sans-serif (браузер должен выбрать семейство sans-serif) и monospace (браузер должен выбрать моноширинный шрифт) |
<generic-voice> | Звук голоса; может быть male (мужской), female (женский) или child (детский) |
<integer> | Стандартные целые значения |
<keep> | Контекстно-зависимое свойство; принимает значение Auto, для того чтобы не удерживать вместе ограничения, или Always для жесткого удержания ограничений вместе. Дополнительная информация приведена в спецификации XSL |
<language> | Определитель языка, соответствующий спецификации RFC1766 (которую можно найти по адресу www.w3.org/TR/xsl/sliceD.html#RFC1766) |