2010-03-22 6 views
1

J'ai utilisé XSL-FO et FOP Engine pour générer des documents PDF pour les données requises. Cela fonctionne très bien, mais dernièrement j'ai vu quelques limitations dans FOP en particulier quand il s'agit de permettre à l'utilisateur de saisir du texte dans un éditeur html qui peut être transformé en XSL-FO et donné au pilote FOP. Cela m'a amené à pointer pour demander à cette grande communauté de personnes bien informées sur ce qui est possible Open Source ou même des bibliothèques non open source pour générer des documents PDF en Java?Bibliothèques alternatives disponibles en Java pour générer des documents PDF

Répondre

4

iText, open source libre.

http://sourceforge.net/projects/itext/

+1

Assurez-vous d'acheter une licence, si vous l'utilisez sans acheter une licence, et se faire attraper, vous êtes obligé d'ouvrir le code source complet de votre entreprise (licence AGPL) –

+1

@BananHunt: pas le code source de la compagnie. le code source des applications qui rencontrent/touchent un client. – akira

0

PDFBox est une autre option open source Apache.

1

Si vous voulez coller avec XSL-FO et êtes prêt à aller sur la route commerciale, je suggère d'utiliser XEP de RenderX. Je l'ai récemment déplacé à partir de FOP 0.2x et j'ai constaté qu'il contourne beaucoup de limitations FOPs grâce à l'utilisation d'extensions.

L'inconvénient est qu'il en coûte un peu, mais je vous suggère de jeter un coup d'oeil: http://new.renderx.com/tools/xep.html

0

Vous pouvez utiliser Docmosis qui est libre, se trouve sur OpenOffice et Java et peut fonctionner sur à peu près toute plate-forme. Il peut générer des documents volumineux (grâce à OpenOffice) et Docmosis contient une certaine capacité à surmonter les limitations dans OpenOffice pour les blocs de texte très volumineux et autres. Je ne peux pas dire si cela résoudra vos problèmes avec le contenu saisi par l'utilisateur, mais cela ne devrait pas être un facteur dans tout système tant que vous encodez/échappez correctement des jetons XML dans les données utilisateur lorsque vous en avez besoin.

Questions connexes