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.) Документ