Bonjour,
Je cherche à récupérer les formules d'un document entier ou d'une
sélection, pour pouvoir les modifier ensuite.
Les formules sont présentes dans le plain-texte et dans un tableau.
Pour le document je récupère comme ceci et tout va bien :
LeDocument=Thiscomponent
LesObjetsEmbedded=leDocument.getEmbeddedObjects
for i=0 to LesObjetsEmbedded.count-1
LobjetEmbedded=LesObjetsEmbedded(i)
BoulotPourObjetUltime (LobjetEmbedded)
next i
Pour la sélection je procède ainsi :
LaSelection=ThisComponent.getCurrentSelection()
LesObjetsSel=LaSelection.getbyIndex(0)
LesObjetsTextContent=LesObjetsSel.createContentEnumeration("com.sun.star.text.TextContent")
while LesObjetsTextContent.HasMoreElements
LobjetTextContent=LesObjetsTextContent.NextElement
BoulotPourObjetUltime (LobjetTextContent)
wend
Le sous-programme BoulotPourObjetUltime :
Sub BoulotPourObjetUltime (Lobjet As Object)
if Lobjet.getImplementationName="SwXTextEmbeddedObject" then
if
Lobjet.embeddedObject.getImplementationName="com.sun.star.comp.math.FormulaDocument"
then
'Lobjet est une formule
print "formule détectée : " & Lobjet.Name
endif
endif
End Sub
Dans le cas de la sélection, les formules ancrées comme caractère dans
le tableau ne sont pas "vues".
J'avoue que je ne comprends pas pourquoi.
Quelqu'un aurait-il une idée et -le rève- une solution ?
Le fichier exemple est disponible ici :
<http://agnooo.free.fr/pluxml/data/documents/pb/styles_formules/pb_formules_dans_tableau.odt>
Bonne journée
Agnès S.
---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org