XSL-FO

Поделись знанием:
Перейти к: навигация, поиск

XSL-FO (англ. eXtensible Stylesheet Language Formatting Objects — объекты форматирования языка таблиц стилей для XML) — рекомендованный Консорциумом Всемирной паутины язык разметки типографских макетов и иных предпечатных материалов. XSL-FO является частью XSL, наряду с XSLT и XPath.

В отличие от комбинации 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 является [www.w3.org/TR/xsl11/ версия 1.1], в которой, по сравнению с 1.0, появились такие возможности, как закладки, поддержка предметного указателя, а также поддержка многопоточности.

См. также

Напишите отзыв о статье "XSL-FO"

Ссылки

  • [www.w3.org/TR/xsl/ Спецификация XSL-FO 1.1]
  • [xmlgraphics.apache.org/fop/ Apache FOP] — реализация FO-процессора, бесплатная, с открытым исходным кодом
  • [www.w3schools.com/xslfo/default.asp Tutorial XSL-FO от w3schools  (англ.))]
  • [www.data2type.de/xml/XML.html Tutorial XSL-FO (de)]
  • [fonet.codeplex.com/ FO.NET - реализация FO-процессора на .NET]

Отрывок, характеризующий XSL-FO

– Que voulez vous? Lafater aurait dit que je n'ai pas la bosse de la paterienite, [Чего вы хотите? Лафатер сказал бы, что у меня нет шишки родительской любви,] – сказал князь.
– Перестаньте шутить. Я хотела серьезно поговорить с вами. Знаете, я недовольна вашим меньшим сыном. Между нами будь сказано (лицо ее приняло грустное выражение), о нем говорили у ее величества и жалеют вас…
Князь не отвечал, но она молча, значительно глядя на него, ждала ответа. Князь Василий поморщился.
– Что вы хотите, чтоб я делал! – сказал он наконец. – Вы знаете, я сделал для их воспитания все, что может отец, и оба вышли des imbeciles. [дураки.] Ипполит, по крайней мере, покойный дурак, а Анатоль – беспокойный. Вот одно различие, – сказал он, улыбаясь более неестественно и одушевленно, чем обыкновенно, и при этом особенно резко выказывая в сложившихся около его рта морщинах что то неожиданно грубое и неприятное.
– И зачем родятся дети у таких людей, как вы? Ежели бы вы не были отец, я бы ни в чем не могла упрекнуть вас, – сказала Анна Павловна, задумчиво поднимая глаза.
– Je suis votre [Я ваш] верный раб, et a vous seule je puis l'avouer. Мои дети – ce sont les entraves de mon existence. [вам одним могу признаться. Мои дети – обуза моего существования.] – Он помолчал, выражая жестом свою покорность жестокой судьбе.
Анна Павловна задумалась.
– Вы никогда не думали о том, чтобы женить вашего блудного сына Анатоля? Говорят, – сказала она, – что старые девицы ont la manie des Marieiages. [имеют манию женить.] Я еще не чувствую за собою этой слабости, но у меня есть одна petite personne [маленькая особа], которая очень несчастлива с отцом, une parente a nous, une princesse [наша родственница, княжна] Болконская. – Князь Василий не отвечал, хотя с свойственною светским людям быстротой соображения и памяти показал движением головы, что он принял к соображению эти сведения.
– Нет, вы знаете ли, что этот Анатоль мне стоит 40.000 в год, – сказал он, видимо, не в силах удерживать печальный ход своих мыслей. Он помолчал.