[gull] OpenDocument
Daniel Cordey
dc at mjt.ch
Tue Nov 22 09:20:36 CET 2005
On Tuesday 22 November 2005 08:28, Marc SCHAEFER wrote:
> Ben justement non. De nombreuses failles de sécurité existent qui
> consistent en l'interprétation dans le "bon type" malgré l'`extension'
> incorrecte. Notamment par Microsoft IE.
Il est sans doute plus rapide de dire ce que IE fait de maniere correcte :-)
Bref, pour resumer, voici ce que j'ai decouvert depuis que l'on m'a ouvert les
yeux au sujet de ce format OpenDocument.
En decompressant avec unzip ce genre de fichier, on obtient une petite
structure de fichiers dont les noms et nombres peuvent varier. J'ai cree un
document simple avec KOffice et OpenOffice (KSpread & Calc) et je les ai
enregistres en format "OpenDocument". Pouir chacun, j'ai eu la structure de
fichier suivante :
KSpread :
Archive: zz.ksp
Length Method Size Ratio Date Time CRC-32 Name
-------- ------ ------- ----- ---- ---- ------ ----
21 Stored 21 0% 11-22-05 08:54 f98fe4b9 mimetype
10044 Defl:N 1561 85% 11-22-05 08:54 eb22f8d4 maindoc.xml
599 Defl:N 306 49% 11-22-05 08:54 5b77b3bb documentinfo.xml
4371 Defl:N 4191 4% 11-22-05 08:54 269c200c preview.png
-------- ------- --- -------
15035 6079 60% 4 files
OpenOffice Calc :
Archive: yy.ods
Length Method Size Ratio Date Time CRC-32 Name
-------- ------ ------- ----- ---- ---- ------ ----
46 Stored 46 0% 11-22-05 07:49 8a396c85 mimetype
0 Stored 0 0% 11-22-05 07:49 00000000 Configurations2/
0 Stored 0 0% 11-22-05 07:49 00000000 Pictures/
8169 Defl:N 1303 84% 11-22-05 07:49 1b102cb2 content.xml
6085 Defl:N 1365 78% 11-22-05 07:49 3636a746 styles.xml
971 Stored 971 0% 11-22-05 07:49 bb49b0cf meta.xml
2371 Defl:N 2084 12% 11-22-05 07:49 15dbe615
Thumbnails/thumbnail.png
7270 Defl:N 1130 85% 11-22-05 07:49 70f02302 settings.xml
1081 Defl:N 313 71% 11-22-05 07:49 b883d083
META-INF/manifest.xml
-------- ------- --- -------
25993 7212 72% 9 files
Haaaa......
On voit que KOffice ne semble pas stocker une information aussi riche que
celle de OpenOffice. De plus, les noms de fichiers contenant les informations
ne sont pas les memes. Dans OpenOffice, il y a un fichier XML contenant la
liste des fichiers manipules (META-INF/manifest.xml), etc. Il est donc
possible d'acceder a la structure et au contenu des documents. Avec de la
patience, on peut reconstruire les attributs d'une cellule et de son
contenu...
En conclusion, OpenDocument permet bien d'avoir acces a toutes les
informations utilisees pour generer un document sur la base de ces fichiers.
La strcuture est claire et lisible. Toutefois, generer un document complet a
partir de rien n'est pas une mince affaire; mais c'est normal vu la
complexite des attributs. Il me semble donc relativement aise d'ecrire des
programmes de 'lecture' mais se lancer dans la generation de A a Z d'un
document complet ne se fait pas en claquant des doigts. Je pense que cette
structure offre un moyen elegant d'en faire un minimum (et c'est ce que je
vais utiliser). Il faut construire un document ayant la forme et la mise en
page desiree, stoker celui-ci en OpenDocument et ne modifier que le fichier
'content.xml'. Ca. c'est relativement facile ! On peut aussi utilliser des
templates mais je n'ai pas encore investiguer cette solution.
Sauf erreur, Koffice et AbiWord ont aussi adopte le format OpenDocument, mais
il semble qu'il existe (encore ?) des differences quand aux noms de fichiers
et leusr contenus.
Voila ou j'en suis pour l'instant. Ca devrait permettre a ceux qui veulent se
lancer dans l'aventure de partir tout de suite dans la bonne direction. Je ne
sais pas encore si je vais ecrire des classes Python pour generer mes
documents, mais je suis pret a faire part de mes experiences a ceux qui me le
demanderont.
Merci a tous ceux qui m'ont repondu, j'ai gagne un temps precieux.
dc
More information about the gull
mailing list