RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
YandexMoney: 
41001198119846 
E-gold:
5128052

Beyond Linux From Scratch. Версия 6.0

Глава 45. PostScript

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.

Поиск

 

Найди своих коллег!