[gull] OpenDocument
Daniel Cordey
dc at mjt.ch
Tue Nov 22 12:26:27 CET 2005
On Tuesday 22 November 2005 11:33, Jean-Bruno Luginbühl wrote:
> Bon, sans connaître beaucoup, ce que j'ai compris, c'est que l'interface
> (API) UNO permet d'interfacer un language externe pour piloter les
> fonctions de OpenOffice.org. En fait UNO permet d'écrire des "macros"
> dans un autre language que StarBasic (en offrant les mêmes fonctions!).
Exact. Ca me parait etre une exellente idee qui permet de d'utiliser des
modules existants ou d'ecrire des choses que l'on ne peut faire en StarBasic.
> Cela fonctionne entre autre avec JAVA aussi et sauf erreur C/C++,
> peut-être aussi perl mais je ne suis pas sûr.
Au pire, on peut interfacer Perl avec Python/java/C/C++ en utilisant UNO...
> Pour ce qui est de l'application de Daniel, générer un fichier exemple
> (plutôt modèle) et modifier le content.xml devrait suffire dans un
> premier temps.
Oui, je ne vais pas me lancer dans l'ecriture de programme de mise en page
avec UNO... c'est un peu overkilling dans mon cas. Regenerer un bout du
fichier document.xml, puis le ziper avec le reste est ce qu'il y a de plus
simple et rapide a realiser; en tout cas pour le probleme qui m'occupe en ce
moment.
Par exemple, la modification d'une cellule ne necessite que de generer (par
exemple):
<table:table-cell table:style-name="ce6" office:value-type="string">
<text:p>
Hello world !
</text:p>
</table:table-cell>
etc.
C'est donc tres proche de la structure de l'HTML et l'utilisation des 'style'
suit le meme principe que les CSS. DOnc, dans le principe, et tant que l'on
ne doit pas aller modifie les 'styles' et autres fichiers, c'est extremement
simple. Mais ce qui est fantastique est que l'on a un grand nombre de
possibilites pour generer des choses tres complexes si on le desire. Je ne me
suis pas encore penche sur le lien a propos de DocBook et j'avais toujours
touve le moyen d'eviter de m'y plonger. Ce n'est pas que je ne trouve pas
interessant, mais c'est juste une question de temps a disposition. Le "Open
Document Format for Office Applications (version 1.0)" fait... 706 pages...
Le probleme est que je n'ai pas trouve quelque chose expliquant en 2 ou trois
pages comment faire quelque chose de "quick-&-dirty". C'est, soit 707 pages
(et maintenant nous en sommes a la version 2.0), soit de longs textes
decrivants les principes et le merites... soit rien. Si vous le desirez, je
peut faire une petite doc sur ce que je m'aprete a faire. A savoir :
A partir d'un CSV, generer un fichier xml pouvant etre inclus dans une
structure OpenDocument. Ceci pour un format de tableur et en utilisant un
document pre-existant comme squelette. Je ne vais pas generer le calcul de la
taille des colonnes en fonction de leur contenu... quoique je vais voir quel
attribut 'automatique' peut-etre utilise pour cette definition. Mon code sera
ecrit en Python, mais contiendra assez de commentaires pour etre
comprehensible par les Perlistes et les shellistes (ca devrait etre evident
pour les Javaistes). Ce code n'est pas non plus destine a etre d'usage
general, mais simplement un exemple tres 'brutal' de generation de ces
donnees XML.
Donc, si cela interesse quelqu'un, qu'il clique ici [X] :-)
dc
More information about the gull
mailing list