» » » » Стивен Холзнер - XSLT


Авторские права

Стивен Холзнер - XSLT

Здесь можно скачать бесплатно "Стивен Холзнер - XSLT" в формате fb2, epub, txt, doc, pdf. Жанр: Интернет, издательство Питер, год 2002. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Стивен Холзнер - XSLT
Рейтинг:
Название:
XSLT
Издательство:
Питер
Жанр:
Год:
2002
ISBN:
5-94723-271-5
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "XSLT"

Описание и краткое содержание "XSLT" читать бесплатно онлайн.



Эта книга посвящена XSLT — мощным и удобным системам преобразования документов. В ней не только рассматривается весь синтаксис XSLT, от основ до специальных аспектов, но и подробно излагаются современные способы использования XSLT.

Вы найдете сотни практических примеров, таких как осуществление преобразований XSLT на web-cepвepax, подключение к базам данных и использование браузеров для осуществления преобразований на лету.

Книга рассчитана на всех, кто хочет изучать XSLT и использовать его на практике






• общие свойства полей для блоков: margin-top, margin-bottom, margin-left, margin-right, space-before, space-after, start-indent, end-indent;

• break-after;

• break-before;

• color;

• font-height-override-after;

• font-height-override-before;

• hyphenation-keep;

• hyphenation-ladder-count;

• id;

• keep-together;

• keep-with-next;

• keep-with-previous;

• last-line-end-indent;

• linefeed-treatment;

• line-height;

• line-height-shift-adjustment;

• line-stacking-strategy;

• orphans;

• relative-position;

• space-treatment;

• span;

• text-align;

• text-align-last;

• text-indent;

• visibility;

• white-space-collapse;

• widows;

• wrap-option;

• z-index.

Например, я могу добавить в документ заголовок «The Planets Table» (Таблица планет), задав шрифт Times (в данный момент fop поставляется с встроенными шрифтами Times, Helvetica, Courier, Symbol, sans-serif, serif и ZapfDingbats) в свойстве font-family, размер шрифта 36 пунктов в свойстве font-size и полужирный стиль, установив свойство font-weight в «bold». Высоту блока я задам при помощи свойства line-height и покажу заголовок голубым при помощи свойства color:

<?xml version="1.0"?>

<xsl:stylesheet

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

 xmlns:fo="http://www.w3.org/1999/XSL/Format"

 version="1.0">

 <xsl:template match="PLANETS">

  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">

   <fo:layout-master-set>

    .

    .

    .

   </fo:layout-master-set>

   <fo:page-sequence master-name="page">

    <fo:flow flow-name="xsl-region-body">

    <fo:block font-weight="bold" font-size="36pt"

     line-height="48pt" font-family="Times" color="blue">

     The Planets Table

    </fo:block>

    <xsl:apply-templates/>

   </fo:flow>

  </fo:page-sequence>

  .

  .

  .

Этот код создаст блок заголовка, который показан в верхней части текста на рис. 11.1. Таким способом я могу создать аналогичные блоки для каждого элемента данных каждой планеты при помощи таблицы стилей XSLT. Заметьте также, что я вывожу имя каждой планеты курсивом, установив свойство font-style в «italic», и я подчеркиваю остальной текст при помощи свойства text-decoration элементов <fo:inline>, которые мы рассмотрим в следующей главе:

<?xml version="1.0"?>

<xsl:stylesheet

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

 xmlns:fo="http://www.w3.org/1999/XSL/Format"

 version="1.0">

 <xsl:template match="PLANETS">

  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">

   <fo:layout-master-set>

    .

    .

    .

   </fo:layout-master-set>

   <fo:page-sequence master-name="page">

    .

    .

    .

   </fo:page-sequence>

  </fo:root>

 </xsl:template>


 <xsl:template match="PLANET/NAME">

  <fo:block font-weight="bold" font-size="28pt"

   line-height="48pt" font-family="Times" font-style="italiс">

   Planet:

   <xsl:apply-templates/>

  </fo:block>

 </xsl:template>


 <xsl:template match="PLANET/MASS">

  <fo:block font-size="24pt" line-height="32pt" font-family="Times">

   <fo:inline text-decoration="underline">

    Mass

   </fo:inline>:

   <xsl:apply-templates/>

   [Earth = 1]

  </fo:block>

 </xsl:template>

 .

 .

 .

</xsl:stylesheet>

Вот и все. Вы создали свое первое преобразование из XML в XSL-FO, преобразовав planets.xml в planets.fo. Процессор fop создаст из planets.fo файл planets.pdf, и вы можете вернуться к рис. 11.1 и посмотреть на результат.

Это преобразование форматировало данные в planets.xml и отображало их в блоках, одно за другим. С другой стороны, в предыдущих главах мы видели данные планет в виде таблицы. Можно ли это сделать в XSL-FO? Никаких проблем.

Создание таблиц

Таблица — одна из самых полезных структур, которые можно форматировать при помощи XSL-FO. Таблица в XSL-FO во многом похожа на таблицу в HTML: это прямоугольная сетка, состоящая из строк и столбцов ячеек. Для создания таблиц можно применять девять форматирующих элементов.

• <fo:table-and-caption>;

• <fo:table>;

• <fo:table-column>;

• <fo:table-caption>;

• <fo:table-header>;

• <fo:table-footer>;

• <fo:table-body>;

• <fo:table-row>;

• <fo:table-cell>.

Создание таблиц в XSL-FO аналогично их созданию в HTML. Вы создаете элемент <fo:table>, содержащий всю таблицу целиком, затем форматируете каждый столбец при помощи элемента <fo:table-column>. После чего вы создаете элемент <fo:table-body>, чтобы задать тело таблицы. Элемент <fo:table-body> содержит все элементы <fo:table-row>, каждый из которых создает строку таблицы. Каждый элемент <fo:table-row> содержит элементы <fo:table-cell>, в которых содержатся данные ячеек таблицы.

Следующий пример (листинг 11.4) демонстрирует работу с этими элементами. Приведенная таблица стилей XSLT преобразует planets.xml в документ XSL-FO, форматирующий данные планет в таблицу XSL-FO.

Листинг 11.4. tables.xsl

<?xml version="1.0"?>

<xsl:stylesheet

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

 xmlns:fo="http://www.w3.org/1999/XSL/Format"

 version="1.0">

 <xsl:template match="PLANETS">

  <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">

   <fo:layout-master-set>

    <fo:simple-page-master master-name="page"

     page-height="400mm" page-width="300mm"

     margin-top="10mm" margin-bottom="10mm"

     margin-left="20mm" margin-right="20mm">

     <fo:region-body margin-top="0mm" margin-bottom="10mm"

      margin-left="0mm" margin-right="0mm"/>

     <fo:region-after extent="10mm"/>

    </fo:simple-page-master>

   </fo:layout-master-set>

   <fo:page-sequence master-name="page">

    <fo:flow flow-name="xsl-region-body">

     <fo:table>

      <fo:table-column column-width="30mm"/>

      <fo:table-column column-width="30mm"/>

      <fo:table-column column-width="30mm"/>

      <fo:table-column column-width="30mm"/>

      <fo:table-column column-width="30mm"/>

      <fo:table-column column-width="30mm"/>

      <fo:table-body>

       <fo:table-row>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Name

         </fo:block>

        </fo:table-cell>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Mass

         </fo:block>

        </fo:table-cell>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Day

         </fo:block>

        </fo:table-cell>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Radius

         </fo:block>

        </fo:table-cell>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Density

         </fo:block>

        </fo:table-cell>

        <fo:table-cell border-width="0.5mm">

         <fo:block font-size="18pt" font-weight="bold">

          Distance

         </fo:block>

        </fo:table-cell>

       </fo:table-row>

       <xsl:apply-templates/>

      </fo:table-body>

     </fo:table>

    </fo:flow>

   </fo:page-sequence>

  </fo:root>

 </xsl:template>


 <xsl:template match="PLANET">

  <fo:table-row>

   <xsl:apply-templates/>

  </fo:table-row>

 </xsl:template>


 <xsl:template match="NAME">

  <fo:table-cell border-width="0.5mm">

   <fo:block font-size="18pt">

    <xsl:value-of select='.'/>

   </fo:block>

  </fo:table-cell>

 </xsl:template>


 <xsl:template match="MASS">

  <fo:table-cell border-width="0.5mm">

   <fo:block font-size="18pt">

    <xsl:value-of select='.'/>

   </fo:block>

  </fo:table-cell>

 </xsl:template>


 <xsl:template match="DAY">


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "XSLT"

Книги похожие на "XSLT" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Стивен Холзнер

Стивен Холзнер - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Стивен Холзнер - XSLT"

Отзывы читателей о книге "XSLT", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.