Bonjour ...
En premier, je présente une partie de code xml :
Pour ceux qui ne connaissent pas, et pour les autres, ce code est ce que génère le format ODF pour gérer le positionnement en tant qu'indice ou exposant... (sachant que les parenthèses, c'est moi qui vous les ai mises, afin de vous montrer les différentes possibilités)
Bref, ce n'est pas fait simplement !
Donc, il me faut analyser le code XML :
- pour repérer tous les attributs style-name, de l'élément style:style, commençant par T - et mieux suivi d'un ou plusieurs chiffres - correspondant à une déclaration de l'attribut style:text-position, de l'élément enfant style:text-properties ...
- puis repérer l'attribut text:style-name, de l'élément text:span correspondant,
- afin de transformer cet élément text:span en text:sup ou text:sub ...
(La feuille XSL se chargeant de transformer en équivalent HTML.
)
J'essaye de démarrer avec ce code PHP, mais cela ne fonctionne pas !
ou celui-ci, moins restrictif :
si je fais un var_dump de la variable match, elle est vide ...
Quelqu'un pourrait-il m'aider, svp ?
Modifié par ste (27 Jul 2007 - 11:08)
En premier, je présente une partie de code xml :
<style:style style:name="T(.*)" style:family="text">
<style:text-properties style:text-position="(super|sup) 58%"/>
</style:style>
<text:span text:style-name="T(.*)">blabla</text:span>
Pour ceux qui ne connaissent pas, et pour les autres, ce code est ce que génère le format ODF pour gérer le positionnement en tant qu'indice ou exposant... (sachant que les parenthèses, c'est moi qui vous les ai mises, afin de vous montrer les différentes possibilités)
Bref, ce n'est pas fait simplement !
Donc, il me faut analyser le code XML :
- pour repérer tous les attributs style-name, de l'élément style:style, commençant par T - et mieux suivi d'un ou plusieurs chiffres - correspondant à une déclaration de l'attribut style:text-position, de l'élément enfant style:text-properties ...
- puis repérer l'attribut text:style-name, de l'élément text:span correspondant,
- afin de transformer cet élément text:span en text:sup ou text:sub ...
(La feuille XSL se chargeant de transformer en équivalent HTML.

J'essaye de démarrer avec ce code PHP, mais cela ne fonctionne pas !
preg_match_all('/<style:style style:name="T(.*?)" style:family="text"><style:text-properties style:text-position="(.*?)"/><\/style:style>/Us',$this->content,$this->match);
ou celui-ci, moins restrictif :
preg_match_all('/<style:style style:name="T(.*?)" style:family="text">(.*)<\/style:style>/Us',$this->content,$this->match);
si je fais un var_dump de la variable match, elle est vide ...
Quelqu'un pourrait-il m'aider, svp ?
Modifié par ste (27 Jul 2007 - 11:08)