XSL-FO
XSL-FO (англ. eXtensible Stylesheet Language Formatting Objects — объекты форматирования языка таблиц стилей для XML) — рекомендованный Консорциумом Всемирной паутины язык разметки типографских макетов и иных предпечатных материалов. XSL-FO является частью XSL, наряду с XSLT и XPath.
XSL-FO | |
---|---|
Орган стандартизации | Консорциум Всемирной паутины |
Официальный сайт | w3.org/TR/xsl11/ (англ.) |
В отличие от комбинации HTML и CSS, XSL-FO — это унифицированный язык представления. Он не имеет семантической разметки в том смысле, в каком она используется в HTML. В отличие от CSS, который модифицирует представление по умолчанию для внешнего HTML или XML-документа, XSL-FO сохраняет все данные документа внутри себя.
Документ XSL-FO — это XML файл, в котором хранятся данные для печати или вывода на экран (например, просто текст). Эти данные находятся внутри тегов fo:block, fo:table, fo:simple-page-master и др., где указаны отступы, переводы строк и т.д.
Общая идея использования XSL-FO состоит в том, что пользователь создаёт документ не в FO, а в виде XML. Это может быть, например, XHTML или DocBook, хотя возможно использование буквально любого языка XML. Затем пользователь применяет XSLT-преобразование, либо написав его самостоятельно, либо взяв готовое, подходящее к этому типу документа. Этот XSLT преобразует XML в XSL-FO.
После того как документ на XSL-FO получен, он передаётся приложению, которое носит название FO-процессор. Эта программа конвертирует XSL-FO-документ в какой-либо читаемый и/или печатаемый формат. Наиболее часто используется преобразование в PDF либо PS; некоторые FO-процессоры могут давать на выходе RTF-файлы либо просто показывать документ в окне.
Текущая и будущие версии
правитьНа данный момент актуальной версией XSL-FO является версия 1.1, в которой, по сравнению с 1.0, появились такие возможности, как закладки, поддержка предметного указателя, а также поддержка многопоточности.
См. также
правитьСсылки
править- Спецификация XSL-FO 1.1
- Apache FOP — реализация FO-процессора, бесплатная, с открытым исходным кодом
- Tutorial XSL-FO от w3schools (англ.))
- Tutorial XSL-FO (de)
- FO.NET - реализация FO-процессора на .NET
Это заготовка статьи о программировании. Помогите Википедии, дополнив её. |