moths-art
Mar 7 2005, 06:53 PM
Bonjour à tous :
Je cherche actuellement un moyen idéal pour traiter du contenu. Mon objectif est de permettre la saisie d'un texte sur une page admin et d'en créer automatiquement des pages HTML et du PDF voir du PS (PostScript).
Mes recherches sur les extensions de PHP m'ont orienté vers clibPDF et PDFlib qui sont deux extensions Pear quasiment similaire.
Cependant, ayant testé le XSL avec PHP5 depuis quelque temps...j'aimerais idéalement utilisé du XSL-FO qui me rendrait bien des services.
Cependant, je n'ai trouvé que peu d'article dessus et ne suis pas sur que des librairies de PHP permettent de traiter du Formatting Object.
(je n'ai que trouver le très célèbre FOP en java.
Qu'en pensez-vous?
Vers quoi dois-je m'orienter?
qwix
Mar 7 2005, 06:59 PM
Si tu es motivé pour utiliser les formatting objects pourquoi pas, cependant je n'ai jamais essayé ça avec PHP je ne peux donc pas te dire si ça marche, ni même comment ça marche. Je pense qu'on peut peut-être utiliser ça avec xslt_process mais bon, je n'en suis pas sur du tout.
Sinon tu as pensé à regardé du côté de FPDF ?
www.fpdf.org
moths-art
Mar 7 2005, 07:15 PM
Oui, Qwix : j'ai bien regardé du côté de FPDF : j'ai vu que c'était une librairie libre mais qu'il lui manque encore le formating object...donc ça serra la roue de secours si jamais. J'attend avant de me lancer dans un projet trop ambicieux donc je préfère faire le tour de ce qui existe.
Pour indication: je ne suis pas limité par les librairies : je peux utiliser toutes les librairies PEAR ainsi que PHP 5 car la finalité serait de l'utiliser soit en locale soit sur serveur dédié donc pas de soucis à ce niveau.
J'utiliserais donc la classe XSLTProcessor dans PHP5 qui me facilitera bien la tache...
Le problème c'est qu'on utilise un fichier xsl pour parser un contenu XML avec cette classe et qu'on se retrouve avec un fichier FO.Ce fichier Fo permet de faire une quantité de chose comme du PS ou du PDF mais il faut un convertisseur et j'ai bien peur qu'il n'existe rien de concret en PHP.
Jusqu'à preuve du contraire.
Si tu as accès à ton serveur et que tu peut installer un programme tiers pour gérer FO, tu peut l'utiliser via PHP grace au fonction d'appelle de commande shell :
>
http://fr.php.net/exec
De même, tu peut interfacer Java avec PHP :
>
http://fr.php.net/java
moths-art
Mar 7 2005, 08:17 PM
Merci Jep. C'est vrai...je commençais à y penser.
Bon, j'suis pas un expert sous linux mais je devrait me débrouiller.
(prise de tête en prévision)
En revanche, je suis plus favorable pour du python que du java : rapidité, license gnu et personnes qualifiées dans le domaine dans mon entourage oblige. (un certain dégout de java aussi...jamais vraiment gobé la pillule)
M'enfin, j'aurais espérer une classe entièrement php. On sait jamais ce que l'avenir nous réserve et ça ne m'étonnerais pas que j'ai dans l'avenir le même problème avec un serveur mutualisé...
qwix
Mar 8 2005, 09:56 AM
Oublies la solution de exec, car, cette fonction est souvent désactivée pour des raisons de sécurités, tout comme shellexec et consort ainsi que les opérateurs de backtick. De plus si ça tourne en local et que tu n'es pas sous unix ça ne marchera pas.
Je ne comprends pas pourquoi tu t'obstine à utilises le FO tu veux générer un PDF de documents, et ce à la volée ? Personellement je trouve que les FO c'est ultra verbeux, et c'est surement plus efficace d'utiliser FPDF ou PDFlib mais bon, ce n'est que mon avis
Thanh
Mar 8 2005, 10:30 AM
J'ai utilisé FPDF et PDF Lib, c'est la crème les deux librairies. FPDF est plus accessible mais offre moins de possibilités(enfin dans mes souvenirs, car j'ai plus utilisé le second depuis deux ans).
moths-art
Mar 8 2005, 11:14 AM
Ok, merci à tous.
Bon, pour l'exec, je ne peux pas trop l'envisager pour l'instant de toute façon...et il me faudrait une plate-forme en Unix ce qui ne me déplairait pas mais bon.
J'avais trouvé le package xml_fo2pdf (de Pear) qui convertit un fichier xsl-fo en soit du pdf, du ps, pd etc
ça m'a l'air plutôt pas mal même si le fo est plutôt pompeu.
Je vais essayé les 2 (FPDF et FO) tant que j'ai encore un peu de temps en créant 2 classes distinctes.
Fo me parait être un language d'avenir bien qu'il soit rebutant au premier abord.
De plus, toutes mes données sont actuellement en XML et parsé à l'aide d'une classe XSLTransformer dans les 2 cas le travail s'avère plutôt rude.
Mon but final est d'avoir des classes génériques ou j'aurais idéalement seulement les fichiers XSL à transformer.
Mais je penses que j'ai assez d'infos sous la main.
Je vous ferais part de mes découvertes et énervements...@+
qwix
Mar 8 2005, 12:07 PM
Ha sino pour exec je viens de me rappeler qu'en fait ça marchais sous windows aussi, il suffit de donner la bonne commande à exécuter mais bon c'est pas trop conseillé d'utiliser ça, à moins de ne pas pouvoir faire autrement.
moths-art
Mar 8 2005, 12:29 PM
Non, de toute façon je ne l'utiliserais pas...
Je crois que ça ferais hérisser les cheveux de n'importe quel admin linux.Je crois que tu bosses avec d'ailleurs : quel distrib?(bon je sais, je m'égarre...)
qwix
Mar 8 2005, 12:35 PM
Ben je suis à fond pour des serveurs UNIX moi lol.
Mais je n'ai pas de distribution préférée en particulier, surtout que je ne suis pas admin système alors y'a plein de trucs que je ne sais pas faire.
Mais je sais que généralement les serveurs c'est fedora et debian souvent.
Maintenant y'a surement d'autres distributions qui marchent bien, mais bon je connais pas tout lol.
liguorien
Mar 8 2005, 12:49 PM
moths-art
Mar 8 2005, 04:45 PM
Perso, qwix : j'ai un peu travaillé sur la debian pour de l'admin en ligne de commande avec un debian.(pas de Gnome ni rien, beurk)
Je pense personnelement que Fedora est la meilleur ditrib pour des seveurs car elle est quand même suivit par une société et de personnes très réactive ce qui manque un peu à débian.(qui à d'autres avantages...)
Sinon, je me suis mis à Ubuntu sur ma bécanne perso et j'aime bien mais ça reste qu'un gadget encore...php5 pas installé, photoshop qui me manque etc.
Mais j'y passe petit à petit.
Liguorien : merci de m'encourager pour le xsl-fo. Je connais bien XSL et XPath maintenant donc ça ne devrait pas poser un gros problème...
Pour python, c'est assez suptille question rapidité en fait...bien que ça soit interpréter par Zope.
A priori, c'est très interressant parce qu'il utilise facilement des bibliothèques en C ou C++ (par exemple des gros algorithmes.) et qu'il utilise une synthaxe encore plus clair et plus performante que java.
M'enfin, je ne fait que répéter les mots d'un copain qui travaille sur les 2 et qui a ça petit préférence.
Pour le lien, je crois que je l'ai déjà visité plusieurs fois ...
Bon, le C++ et le Java n'étant pas ma tasse de thé...je ne pense pas m'étendre inutilement.
voilà
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez
cliquer ici.