<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Distance (million miles): 43.4
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt' font-weight='bold'>
Name: Venus
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Mass (Earth = 1): .815
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Day (Earth = 1): 116.75
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font size='36pt'>
Radius (in miles): 3716
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Density (Earth = 1): .943
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Distance (million miles): 66.8
</fo-block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt' font-weight='bold'>
Name: Earth
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Mass (Earth = 1): 1
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Day (Earth = 1):
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Radius (in miles): 2107
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Density (Earth = 1):
</fo:block>
<fo:block
font-family='sans-serif' line-height='48pt'
font-size='36pt'>
Distance (million miles): 128.4
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
Итак, мы успешно создали planets.fo. Как нам теперь с его помощью создать форматированный файл PDF?
Создание форматированного документа
Чтобы обработать planets.fo и создать форматированный (formatted) документ, я воспользуюсь процессором FOP Джеймса Таубера (James Tauber), который был подарен им проекту Apache XML Project.
Главная страница процессора — http://xml.apache.org/fop; в настоящий момент FOP можно загрузить с http://xml.apache.org/fop/download.html. Пакет FOP, включая документацию, поставляется в формате zip, поэтому сначала его нужно распаковать FOP реализован как JAR-файл Java, fop.jar, здесь я буду использовать FOP версии 0.15.
FOP можно запустить из командной строки, используя класс Java, на момент написания книги называвшийся org.apache.fop.apps.CommandLine. Нужно предоставить разборщик XML — я буду использовать разборщик Xerces на Java в файле xerces.jar (он поставляется вместе с Xalan). Давайте рассмотрим, как в Windows, используя Java, при помощи FOP преобразовать planets.fo в planets.pdf: в данном случае я указываю переменной classpath ключом -ср включить файл xerces.jar, а также два необходимых JAR-файла, входящих в состав загружаемого пакета FOP — fop.jar и w3c.jar. (В этом примере предполагается, что все файлы fop.jar, xerces.jar и w3c.jar расположены в каталоге C:planets; если это не так, укажите полные пути к ним.)
C:planets>java -ср fop.jar:xerces.jar:w3c.jar org.apache.fop apps.CommandLine planets.fo planets.pdf
Получившийся файл, planets.pdf, можно просмотреть в средстве чтения файлов PDF Adobe Acrobat Reader, как изображено на рис. 1.8. (Acrobat PDF Reader можно бесплатно загрузить с www.adobe.com/products/acrobat/readermain.html.) Документ planets.xml изображен на рисунке отформатированным в соответствии с таблицей стилей planetsPDF.xsl.
