XSLT - страница 24
>
> margin-right="0mm" margin-left="0mm"
> margin-bottom="10mm" margin-top="0mm"/>
>
>
>
>
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt" font-weight="bold">
> Name: Mercury
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Mass (Earth = 1): .0553
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Day (Earth = 1): 58.65
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Radius (in miles): 1516
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Density (Earth = 1):.983
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Distance (million miles): 43.4
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt" font-weight="bold">
> Name: Venus
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Mass (Earth = 1): .815
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Day (Earth = 1): 116.75
>
>
> font-family="sans-serif" line-height="48pt"
> font size="36pt">
> Radius (in miles): 3716
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Density (Earth = 1): .943
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Distance (million miles): 66.8
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt" font-weight="bold">
> Name: Earth
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Mass (Earth = 1): 1
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Day (Earth = 1):
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Radius (in miles): 2107
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Density (Earth = 1):
>
>
> font-family="sans-serif" line-height="48pt"
> font-size="36pt">
> Distance (million miles): 128.4
>
>
>
>
Итак, мы успешно создали >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.) Документ