3.10. Инсталлируем FO-процессор

XSL-скрипты, которыми мы до сих пор пользовались, не умеют напрямую транслировать DocBook в PDF. Процесс распадается на два шага:

  1. Стандартные скрипты преобразуют DocBook в XSL-FO.

  2. Для преобразования XSL-FO используются стандартные FO-процессоры.

Мы будем использовать процессор XEP компании RenderX (www.renderx.com).

JadeTex, FOP, PassiveTex

Альтернативные пути преобразования используют DSSSL скрипты и/или TeX в качестве промежуточного формата. Но на сегодняшний день XSL-FO — наиболее прогрессивная и активно развиваемая технология.

Существуют бесплатные варианты XSL-FO процессоров, самые известные из них Apache FOP и PassiveTex. Но они уступают RenderX XEP по функциональности, к тому же обе эти разработки заморожены (по состоянию на начало 2005 г.) и поэтому перспективы их сомнительны.

Сильная сторона RenderX XEP — полноценная поддержка русского языка, включая расстановку переносов в русском тексте.

Скачайте бесплатную персональную версию процессора. Заполните регистрационную форму с вашим именем и email и получите лицензионный ключ.

Персональная и коммерческая версия

Персональная версия отличается от коммерческой тем, что вставляет логотип RenderX внизу каждой сгенерированной страницы. Для целей данной статьи этого достаточно, а для промышленной эксплуатации понадобится приобрести коммерческую лицензию. Технически для перехода на коммерческую лицензию надо просто скопировать файл с лицензионным ключом, полученный от RenderX.

Распакуйте полученный архив и проинсталлируйте его:

# java -jar setup-4.2-20050228-trial.jar -c

This program installs XEP 4.2 build 20050228 Edition on your computer.

DO YOU AGREE TO THE TERMS OF THE LICENSE AGREEMENT (YES/NO/QUIT) [YES]:
Specify XEP installation directory or (QUITE) [/usr/local/RenderX/XEP]:
Do you want to activate XEP now? (YES/NO/QUIT) [YES]:
Specify XEP license file location or (QUIT) [license-trial.xml]:
I'm going to install XEP to the directory /usr/local/RenderX/XEP, 
read license from the file license-trial.xml. 
Do you want to continue? (YES/NO/QUIT) [YES]:

Copying files ....................
Installation successful.
#

Вы можете выбрать для инсталляции другой каталог (причем можно пользовательский, а не системный). В дальнейшем тексте предполагается, что RenderX XEP установлен в каталог по умолчанию.

Параметры java

При работе XEP с большими (порядка сотни страниц) документами ему может не хватит оперативной памяти. В этом случае увеличьте объем памяти, отводимый для java-машины, добавив параметр в вызов java в командном файле /usr/local/RenderX/xep:

"$JAVA_HOME/bin/java" -Xmx500000000

Задайте половину физического объема памяти сервера в байтах (в данном примере задано 500 мегабайт).