[PHP] Manipuler des fichiers ODF

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur : Vilains modOOs

cyruss
Fraîchement OOthentifié
Messages : 4
Inscription : 27 nov. 2008 13:54

[PHP] Manipuler des fichiers ODF

Message par cyruss »

Bonjour,

je fais partie de la team ayant développé odtPHP. odtPHP est une bibliothèque PHP destinée à servir de moteur de template pour des fichiers OpenDocument.Son utilisation requiert PHP 5.2 et d'activer l'extension Zip.

Les fonctionnalités de la version 0.2 sont :
  • la gestion des remplacements simple
    la gestion des boucles
    la gestion des images
Pour l'instant on utilise des expressions régulières pour faire les remplacements. Ce n'est pas toujours idéal, nous sommes à la recherche d'axes d'améliorations. N'hésitez pas à participer.

http://sourceforge.net/projects/odtphp/

http://www.phpfrance.com/tutoriaux/inde ... t-avec-php
Dernière modification par Bidouille le 24 févr. 2010 17:41, modifié 2 fois.
Raison : Titre modifié pour plus de clarté
OpenOffice 3 sous Windows
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25173
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [PHP][Writer] Manipuler des fichiers odt avec PHP

Message par Dude »

Bonjour,

Peux-tu m'indiquer quel est l'intérêt de ta classe par rapport à celle de TinyButStrong ?

Merci

:?:
cyruss
Fraîchement OOthentifié
Messages : 4
Inscription : 27 nov. 2008 13:54

Re: [PHP][Writer] Manipuler des fichiers odt avec PHP

Message par cyruss »

Je ne connaissais pas cette classe !
Super info, j'ai bien fait de poster ici. On va regarder les possibilités de l'outil.

Merci
OpenOffice 3 sous Windows
habot
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 17 sept. 2006 08:41
Localisation : Belgique/Luxembourg

Re: [PHP] Manipuler des fichiers ODT

Message par habot »

Juste pour info.

M'intéressant également à la "connexion" PHP-OpenOffice, mes différentes recherche m'avais conduit sur PHP DocWriter (mais c'est du "lourd").
Mes besoins sont bien plus légers et consistent effectivement au remplissage de modèles.
LibreOffice 3.5.0 FR, Windows sept Home Premium (64) / Windows XP Pro SP3
Pas trop mal OOorganiser.
cyruss
Fraîchement OOthentifié
Messages : 4
Inscription : 27 nov. 2008 13:54

Re: [PHP] Manipuler des fichiers ODT

Message par cyruss »

Pour info la bibliothèque odtphp vient de sortir en v0.3.

https://sourceforge.net/projects/odtphp/

Pour mémoire il s'agit d'une bibliothèque permettant de manipuler des documents ODT sur le mode des templates PHP ({titre}, ...).

La version 0.3 corrige quelques petits bugs.
OpenOffice 3 sous Windows
cyruss
Fraîchement OOthentifié
Messages : 4
Inscription : 27 nov. 2008 13:54

Re: [PHP][Writer] Manipuler des fichiers odt avec PHP

Message par cyruss »

Dude a écrit :Bonjour,
Peux-tu m'indiquer quel est l'intérêt de ta classe par rapport à celle de TinyButStrong ?
Merci
:?:
J'ai fait quelques tests et le premier soucis est qu'il faut faire appel à des programmes externes pour la gestion de la compression ZIP. Du coup on ne peut pas l'utiliser sans avoir un accès root sur les serveurs.

Pour le reste c'est pas mal, faut que je regarde en détail.

++
OpenOffice 3 sous Windows
oloynet
Fraîchement OOthentifié
Messages : 1
Inscription : 11 mai 2009 05:39

Re: [PHP] Manipuler des fichiers ODT

Message par oloynet »

Bonjour,

Pour ma part j'ai re développé une classe PHP tinyDoc qui permet de générer des documents OpenOffice (OpenDocument) ou Word 2007
Pré-requis :
- PHP 5.2
- ZipArchive (option) ou zip en ligne de commande

Historique :
La précédente version de la classe PHP s'appelait tbsOOo

Les nouvelles fonctionnalités :
- fonctionne avec la dernière version de TinyButStrong 3.4.0
- meilleur support des caractères spéciaux (CR, NL, TAB)
- peut générer des fichiers Word 2007
- peut fusionner des images (seulement OpenOffice - OpenDocument)
- peut fusionner au format natif OpenOffice tableur
- peut fusionner des liens
- deux méthodes pour zip/dézipper les documents (en ligne de commande avec ZIP ou ZipArchive de PECL)
- et un plugin pour le framework symfony : sfTinyDocPlugin

Les formats de documents supportés :
- OpenOffice 1.0 or OpenDocument 1.0
- OpenOffice 2.0 or OpenDocument 1.1
- Word 2007

C'est fait pour :
- Pour créer des documents de type texte ou tableur.
- Pour créer des rapports, des mailings, des documents multipages.

Ce n'est pas fait pour :
- Pour fabriquer complètement un document OpenOffice.
- Pour convertir un document OpenOffice en Word ou PDF. Voir le projet PyODConverter.

Avantages :
- aucune installation d'OpenOffice sur le serveur.
- cela fonctionne avec les environnements *nix, windows et autres.
- les templates peuvent êtres facilement modifiés par les intégrateurs.
- la mise en page est effectuée avec OpenOffice et Word2007

Pour voir des exemples

http://tinydoc.unesolution.fr/examples

Voilà pour les nouveautés.
Pour ceux qui connaissant la version avec TbsOOo avec TinyButStrong, c'est presque pareil. J'ai renommé certaines méthodes, mais coté template c'est exactement pareil

Olivier
OpenOffice 1.x, 2.x, 3.x
Skrol29
Fraîchement OOthentifié
Messages : 2
Inscription : 24 févr. 2010 16:24

[PHP] Manipuler des fichiers ODT, ODS, ODF, ODG et ODP

Message par Skrol29 »

Bonjour,

Je signal aux développeurs qu'il existe un nouveau plugin pour fusionner les fichiers OpenOffice sous PHP.
Il s'agit de OpenTBS, une version qui fait suite à tinyDoc et tbsOOo développé par Olivier L.

Plug-in OpenTBS pour TinyButStrong:
aspects techniques:
- fonctionne avec PHP 4 ou 5
- fusionne tous les fichiers OpenOffice
- fusionne les fichiers Microsoft Office basés sur OpenXML
- fonctionne sans la librairie PHP (zlib rend des fonctions plus faciles)

Page de démo:
http://www.tinybutstrong.com/plugins/opentbs/demo/demo.html

Manuel :
http://www.tinybutstrong.com/plugins/opentbs/tbs_plugin_opentbs.html

Site du moteur de template TinyButStrong:
http://www.tinybutstrong.com/fr
OpenOffice 3.1 sous Windows XP et 7
Avatar de l’utilisateur
Thor
MOOdérateur
MOOdérateur
Messages : 340
Inscription : 11 oct. 2009 15:50

Re: [PHP] Manipuler des fichiers ODF

Message par Thor »

Bonsoir,
Merci de votre signalement, mais
Nos règles générales a écrit :Nous vous rappelons également que ce site fait partie du projet OpenOffice.org mais qu'en aucune façon, nous ne sommes liés à l'équipe de développement ou de marketing.
Il faut vous inscrire sur la QA-test (regardez par ici). Votre message aura le plus d'impact, mais il faudra mieux écrire en anglais (à priori pas de souci car les pages sont anglaises, donc vous savez lire l'anglais :mrgreen: ).

Autre point, dommage que vous rediriger vers du contenu anglais (l'auteur me semble francophone).
Dernier point, pas de licence pour ces travaux, même dans le corps du script :!: Oubli :?:
La fonction Recherche sur le forum, c'est génial. Cela peut vous sauver la vie.
habot
Membre OOrganisé
Membre OOrganisé
Messages : 76
Inscription : 17 sept. 2006 08:41
Localisation : Belgique/Luxembourg

Re: [PHP] Manipuler des fichiers ODT

Message par habot »

cyruss a écrit :Pour info la bibliothèque odtphp vient de sortir en v0.3.
https://sourceforge.net/projects/odtphp/
Je suis un peu étonné que personne ne suive :D
Bien ... Je vais le faire. La version 1.0.1 est disponible. L'information n'est pas très fraiche vu que cette version date du 19/10/2009.

J'en profite au passage pour remercier les auteurs (comment ça c'est rare ?) car j'utilise cette librairie au quotidien.
Elle est tellement sympathique que l'ensemble des documents types "officiels" ne sont plus disponibles que sur l'ERP.

Aller, une petite critique : le "templating" n'est possible que pour le contenu d'un document mais pas pour le Header/Footer (normal, pas le même XML dans l'ODT). Comme je vais en avoir besoin, je ne manquerai pas de rapporter la solution (ou un Workarround, ne soyons pas prétentieux).
LibreOffice 3.5.0 FR, Windows sept Home Premium (64) / Windows XP Pro SP3
Pas trop mal OOorganiser.
eltroll
Fraîchement OOthentifié
Messages : 3
Inscription : 15 févr. 2010 14:22

Re: [PHP] Manipuler des fichiers ODT

Message par eltroll »

bonjour,

dans mon cas, j'utilise du PHP5 et libreOffice 3.4 et supérieure.
Voici ce que je voudrais faire et je ne sais pas quelle librairie est la mieux dans mon cas...
J'ai une requête sur une db mysql qui retourne des valeurs comme Nom, Prénom, adresse, code postal, ville, pays. C'est pour faire un mailing :D (vous l'avez compris je suppose..)
Il me faudrait faire un template ODT qui me permettrait de faire une fusion MAIS il faut absolument qu'en résultat j'aie un seul fichier odt que je pourrai envoyer à l'impression sur enveloppes.
Je suis en train de tester (depuis ce matin) odtphp mais ça commence mal... quand je lance la page simplecheck.php, il m'ouvre libreoffice (c'est normal) mais il m'affiche une fenêtre me demandant de choisir l'options de filtre ASCII ??? si je clique sur ok en ayant choisi UTF 8, il m'ouvre un document...Vide...
A mon avis j'ai loupé quelque chose ? J ai testé la version odtphp-1.0.1

merci pour vos commentaires..

R.D.
windows xp - openoffice 3.2
Avatar de l’utilisateur
Thor
MOOdérateur
MOOdérateur
Messages : 340
Inscription : 11 oct. 2009 15:50

Re: [PHP] Manipuler des fichiers ODF

Message par Thor »

Bonjour,

Nous vous rappelons les règles de ce forum et notamment la n° 7
Un sujet = le problème d'une seule personne
Vous ne devez pas poser une question dans le fil d'un autre. Celle-ci ne fait qu'interférer et les réponses éventuellement postées ne feront qu'embrouiller la lecture du problème initial. Vous ne pourrez pas ajouter [Résolu] car vous n'êtes pas l'auteur de la première question.
Donc dans tous les cas, vous devez ouvrir un nouveau sujet pour votre question en rappelant que vous avez le même problème que dans ce fil.

Merci de votre collaboration.
La fonction Recherche sur le forum, c'est génial. Cela peut vous sauver la vie.