FOP-0.20.5

Введение в FOP

Пакет FOP (Formatting Objects Processor) содержит форматировщик печати, управляемый форматированными объектами XSL (XSL-FO). Это приложение Java, которе читает дерево форматированного объекта и выводит результирующие страницы на указанный вывод. Текущие поддерживаемые выходные форматы включают PDF, PCL, PostScript, SVG, XML, print, AWT, MIF и ASCII текст. Изначально вывод производится в PDF.

Информация о пакете

Дополнительно

Выберите файл “Linux JDK Install” после принятия условий лицензии.

Зависимости FOP

Требуемые

J2SDK-1.4.2

Опционально

libxslt-1.1.12, JIMI SDK, Batik и Forrest (используется только для пересборки документации)

Установка FOP

[Замечание]

Замечание

Перед началом сборки убедитесь, что $JAVA_HOME установлена корректно. Допонительно, сборка будет выпадать, если у вас версия JDK старше, чем 1.4.2_x.

Некоторые версии tar будут отображать сообщение, похожее на “tar: A lone zero block at 33476” при распаковке тарбола исходников. Вы можете спокойно проигнорировать это сообщение.

Установка JAI

Установим компоненты JAI запуском следующих команд под пользователем root, находясь в корне дерева исходников FOP:

chmod 755 ../jai-1_1_2_01-lib-linux-i586-jdk.bin && FOP_BUILD_DIR=$(pwd) && cd $JAVA_HOME && yes | $FOP_BUILD_DIR/../jai-1_1_2_01-lib-linux-i586-jdk.bin && cd $FOP_BUILD_DIR

Установка требуемых компонентов FOP

Установим FOP запуском следующих команд:

./build.sh && sed -i -e "s/build/lib/" fop.sh

А теперь, как пользователь root:

install -v -d -m755 \ /opt/fop-0.20.5/{bin,lib,docs/{general,lib,site}} && install -v -m755 fop.sh /opt/fop-0.20.5/bin && install -v -m644 build/fop.jar lib/avalon-framework-cvs-20020806.jar \ /opt/fop-0.20.5/lib && install -v -m644 docs/* /opt/fop-0.20.5/docs && install -v -m644 CHANGES LICENSE README ReleaseЗамечаниеs.html STATUS \ /opt/fop-0.20.5/docs/general && install -v -m644 lib/{avalon.LICENSE.txt,readme} \ /opt/fop-0.20.5/docs/lib && cp -v -R build/site/* /opt/fop-0.20.5/docs/site && ln -svf fop-0.20.5 /opt/fop

Установка Batik JAR

Вам понадобится установить одну дополнительную библиотеку классов Java для обработки объектов SVG. Эта библиотека является частью пакета Batik, а так же включена в пакет FOP. Если у вас установлен Batik, то убедитесь, что библиотека batik.jar включена в вашу переменную окружения $CLASSPATH. Альтернативно, создайте символическую ссылку из /opt/fop-0.20.5/lib/batik.jar, указывающую на полный путь к установленному файлу batik.jar, поэтому скрипт fop.sh будет автоматически его находить.

Если у вас пакет Batik не установлен, то выполните следующие команды как пользователь root:

install -v -m644 lib/batik.jar /opt/fop-0.20.5/lib && install -v -m644 lib/batik.LICENSE.txt \ /opt/fop-0.20.5/docs/lib

Установка компонентов Xalan-Java

Компоненты FOP, необходимые для обработки файлов FO, созданных механизмом преобразования XSL (известного как процессор XSLT), установлены. Механизм преобразования XSL (xsltproc) включен в пакет libxslt-1.1.12 в BLFS. Пакет FOP включает компоненты Xalan-Java для выполнения преобразований XSL. Если у вас установлен пакет Xalan-Java, то пропустите следующий раздел.

Если вы хотите установить компоненты Xalan-Java, предоставляемые пакетом FOP, то выполните следующие команды как пользователь root:

sed -i -e "s/build/lib/" xalan.sh && install -v -m755 xalan.sh /opt/fop-0.20.5/bin && install -v -m644 lib/xml-apis.jar \ lib/xercesImpl-2.2.1.jar \ lib/xalan-2.4.1.jar \ /opt/fop-0.20.5/lib && install -v -m644 lib/{xml-apis,xerces,xalan}.LICENSE.txt \ lib/xml-apis.README.txt \ /opt/fop-0.20.5/docs/lib

Установка Jimi SDK JAR

Если у вас установлена библиотека классов Java Image I/O (Jimi SDK) в дереве исходников FOP в директории lib перед сборкой FOP (это включит поддержку Jimi), то убедитесь, что вы установили этот файл JAR в /opt/fop-0.20.5/lib.

Описание команд

yes | $FOP_BUILD_DIR/../jai-...-jdk.bin: Эта команда устанавливает компоненты JAI в структуру файлов JDK. Команда yes позволяет пропустить прокрутку четырех страниц лицензии и автоматически отвечает “yes” на запрос. $FOP_BUILD_DIR используется в качестве точки ссылки на начальный бинарик и в качестве способа возвращения в дерево исходников FOP.

sed -i -e "s/build/lib/" ...: Эти команды изменяют установленные скрипты оболочки, поэтому положение установленного файла fop.jar определяется правильно.

install -v ...; cp -v ...: В пакете FOP нет скрипта установки. Эти команды установят пакет.

ln -svf fop-0.20.5 /opt/fop: Это создает удобную ссылку, поскольку $FOP_HOME не должна измененяться при каждом изменении версии пакета.

Конфигурация FOP

Файлы конфигурации

~/.foprc

Конфигурационная информация

Использование FOP для обработки некоторых больших FO файлов (включая FO, полученные из исходников BLFS XML), может привести к ошибкам памяти. Если вы не добавите параметр в команду java, используемую в скрипте fop.sh, то вы можете получить сообщение, похожее на показанное ниже:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

Для исключения похожих ошибок вам надо поместить дополнительный параметр в команде java, используемой в скрипте fop.sh. Это может быть выполнено созданием ~/.foprc (который происходит из скрипта fop.sh) и добавлением параметра в переменную окружения FOP_OPTS.

Скрипт fop.sh ищет переменную окружения FOP_HOME для определения положения библиотеки классов FOP. Вы можете создать эту переменную, используя файл ~/.foprc. Создадим файл ~/.foprc при помощи следующих команд:

cat > ~/.foprc << "EOF" FOP_OPTS="-Xmx[RAM_Installed]m" FOP_HOME="/opt/fop" EOF

Замените [RAM_Installed] на объем установленной в вашем компьютере памяти. Например FOP_OPTS="-Xmx768m". Для большей информации об использовании памяти для FOP смотрите http://xml.apache.org/fop/running.html#memory.

Для включения скрипта fop.sh в ваш PATH обновите ваш личный или общесистемный profile на следующее:

PATH=$PATH:/opt/fop/bin

Содержание

Установленные программы: fop.sh и xalan.sh
Установленные библиотеки: avalon-framework-cvs-20020806.jar, batik.jar, fop.jar, xalan-2.4.1.jar, xercesImpl-2.2.1.jar и xml-apis.jar. Компоненты JAI включают libmlib_jai.so, jai_codec.jar, jai_core.jar и mlibwrapper_jai.jar
Установленные директории /opt/fop-0.20.5

Короткое описание

fop.sh

это скрипт-обертка для команды java, который устанавливает FOP окружение и помещает требуемые параметры.

fop.jar

содержит все классы FOP Java.

Последнее обновление 2005-02-16 14:46:41 -0700