fop-1.1

Introduction à fop

Le paquet fop (Formatting Objects Processor) contient un formateur d'impression guidé par le formatage XSL d'objets (XSL-FO). C'est une application Java qui lit une arborescence d'objets de formatage et qui produit les pages qui en résulte vers une sortie spécifique. Les formats de sortie actuellement supportés comprennent le PDF, PCL, PostScript, SVG, XML (représentation en arborescence de zone), print, AWT, MIF et texte ASCII. La cible sortie primaire est le PDF.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-7.7.

Informations sur le paquet

Téléchargements supplémentaires

Paquets requis

Dépendances de fop

Requises

apache-ant-1.9.4

Facultatives

JUnit-4.11 (pour exécuter les tests), X Window System (pour exécuter les tests) JIMI SDK, XMLUnit, JAI Image I/O Tools, JEuclid, PMD (requires Jaxen), et Forrest (Forrest est utilisé seulement pour reconstruire la documentation)

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/fop

Installation de fop

Assurez-vous que $JAVA_HOME est correctement paramétré avant de commencer la construction. Pour construire les classes d'extension JIMI SDK et/u XMLUnit, assurez-vous que les fichiers .jar correspondant peuvent être trouvés par la variable d'environnement CLASSPATH.

Installer les composants de l'API de JAI

Installez les composants de l'API de JAI. En tant qu'utilisateur root :

case `uname -m` in
  i?86)
    tar -xf ../jai-1_1_3-lib-linux-i586.tar.gz
    cp -v jai-1_1_3/lib/{jai*,mlibwrapper_jai.jar} $JAVA_HOME/jre/lib/ext/
    cp -v jai-1_1_3/lib/libmlib_jai.so             $JAVA_HOME/jre/lib/i386/
    ;;
  x86_64)
    tar -xf ../jai-1_1_3-lib-linux-amd64.tar.gz
    cp -v jai-1_1_3/lib/{jai*,mlibwrapper_jai.jar} $JAVA_HOME/jre/lib/ext/
    cp -v jai-1_1_3/lib/libmlib_jai.so             $JAVA_HOME/jre/lib/amd64/
    ;;
esac

Installer les composants fop

La commande javadoc venant avec OpenJDK 8 est devenu plus strict qu'avant à propos de la conformité des commentaires javadoc dans le code source vers l'HTML. La documentation de FOP ne respecte pas ces stantards, aussi les tests de conformité ont été désactivés. Cela peut être fait avec la commande suivante:

sed -i '\@</javad@i<arg value="-Xdoclint:none"/>' build.xml

Ensuite, compilez fop en lançant les commandes suivantes :

ant compile &&
ant jar-main &&
ant javadocs &&
mv build/javadocs .

Si Forrest est installé, construisez la totalité de la documentation:

ant docs

Pour tester l'application, lancez ant junit-all. Les tests de césure échoueront. Pour voir une liste des autres cibles de test, utilisez ant -p. Vous devez lancer les tests depuis un X-window utilisant un serveur GL-aware de Xorg ou certains des tests de JUnit planteront.

Maintenant en tant qu'utilisateur root :

install -v -d -m755                                     /opt/fop-1.1 &&
cp -v  KEYS LICENSE NOTICE README                       /opt/fop-1.1 &&
cp -va build conf examples fop* javadocs lib status.xml /opt/fop-1.1 &&
ln -v -sf fop-1.1 /opt/fop

Explication des commandes

ant target : Cela lit le fichier build.xml et construit les fichiers cibles.

ln -v -sf fop-1.1 /opt/fop : C'est facultatif et cela crée un lien symbolique commode pour qu'on n'ait pas besoin de modifier $FOP_HOME à chaque fois qu'il y a un changement de version de paquet.

Configuration de fop

Fichiers de configuration

~/.foprc

Informations de configuration

L'utilisationn de fop pour traiter certains gros FO's (y compris les FO dérivés des sources XML de BLFS), peut conduire à des erreurs de mémoire. Sauf si vous ajoutez un paramètre à la commande java, utilisé dans le script fop, il se peut que vous receviez des messages similaires à celui décrit ci-dessous :

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

Pour éviter des erreurs comme ça, vous avez besoin de passer un paramètre supplémentaire à la commande java utilisé dans le script fop. On peut faire cela en créant un ~/.foprc (dont la soupee est dans le script fop) et en ajoutant le paramètre à la variable d'environnement FOP_OPTS.

Le script fop cherche une variable d'environement FOP_HOME pour localiser les bibliothèques de la classe fop. Vous pouvez créer cette variable en utilisant aussi le fichier ~/.foprc. Créez un fichier ~/.foprc en utilisant les commandes suivantes :

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

Remplacez <RAM_Installée> par un nombre représentant la quantité de RAM installée sur votre ordinateur (en mégaoctets). Un exemple serait FOP_OPTS="-Xmx768m".

Pour inclure le script fop dans votre path, mettez à jour votre profil personnel ou pour tout le système avec ce qui suit :

PATH=$PATH:/opt/fop
[Note]

Note

L'exécution de fop peut être un peu verbeuse. Le niveau de journalisation par défaut peut être changé à INFO pour toutes les varibales FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE, ALL, ou OFF. Pour faire cela, éditez $JAVA_HOME/jre/lib/logging.properties et changez les entrées pour .leval et java.util.logging.ConsoleHandler.level à la valeur désirée.

Contenu

Programmes installés: fop
Bibliothèques installées: fop.jar et numerous support library classes located in /opt/fop/{build,lib}; JAI components include libmlib_jai.so, jai_codec.jar, jai_core.jar, et mlibwrapper_jai.jar
Répertoire installé: /opt/fop-1.1

Descriptions courtes

fop

est un script enveloppe pour la commande java qui paramètre l'environnement fop et passe les paramètres requis.

fop.jar

contient toutes les classes Java de fop.

Last updated on : 2013-03-13 18:58:54 +010