Le Thu, 03 Sep 2009 22:53:03 +0200, Francois Gatto a écrit :
> Bonsoir,
>
> A priori le code semble correct.
>
> As-tu correctement nommé ton logo ?!
>
> Peut être vérifier également pour certains composants au moyen de xray
> leur existence et/ou leur contenu.
xray monImage me renvoit bien les propriétés (avec le nom correct)
On dirait que cela vient de :
TextePiedPage.insertTextContent(CurseurPiedPage, monImage, false)
Merci.
Rémi.
>
> Francois Gatto
>
> Rémi B a écrit :
>> Bonjour,
>>
>> Dans un document Writer, j'ai déjà une image insérée (logo).
>>
>> Par macro Basic, je souhaite récupérer son URL interne afin de
>> l'insérer dans le pied de page du document. Une sorte de copier/coller
>>
>> J'utilise le code suivant (très largement basé sur Marcelly/Godard,
>> programmation OOo) :
>>
>> '========================================================= Function
>> FindObjectByName(unePage As Object, _
>> nomObj As String, Optional service As String) As Object
>> 'Marcelly, Godard, annexe B
>> Dim objX As Object, x As Long
>> For x = 0 To unePage.Count - 1
>> objX = unePage(x)
>> If objX.Name = nomObj Then
>> if IsMissing(service) then
>> FindObjectByName = objX ' objet trouvé Exit Function
>> else
>> if objX.supportsService(service) then
>> FindObjectByName = objX ' objet trouvé Exit Function
>> end if
>> end if
>> EndIf
>> Next
>> End Function ' renvoie Null en cas d'échec
>>
>>
>> Sub InsererLogo()
>> 'D'après Marcelly, Godard, page 297
>>
>> LeDoc = thisComponent
>> LeTexte = LeDoc.Text
>>
>> 'Un curseur pour analyser les styles
>> monCurseur = LeTexte.createTextCursor 'On récupère le nom du style de
>> la page en cours nomStyleMaPage = monCurseur.PageStyleName 'on récupère
>> l'ensemble des styles de pages possibles lesStylesPage =
>> LeDoc.StyleFamilies.getByName("PageStyles") 'on récupère le style de la
>> page en cours StyleMaPage = lesStylesPage.getByName(nomStyleMaPage)
>> With StyleMaPage
>> .FooterIsOn = true 'on active le pied de page .FooterHeight = 500 'en
>> centaines de mm TextePiedPage = .FooterText 'zone de texte du pied de
>> page
>> End With
>> CurseurPiedPage = TextePiedPage.createTextCursor 'On aligne à droite
>> CurseurPiedPage.ParaAdjust = com.sun.star.style.ParagraphAdjust.RIGHT
>> 'On insère le texte
>> 'TextePiedPage.insertString(CurseurPiedPage, "Texte inséré en pied de
>> page, false)
>>
>> 'Insertion d'une image déjà insérée ailleurs dans le document maPage =
>> LeDoc.DrawPage
>> 'L'image doit être préalablement nommée dans OOo monImage =
>> FindObjectByName(maPage,"logo")
>>
>> TextePiedPage.insertTextContent(CurseurPiedPage, monImage, false)
>>
>> End Sub
>> '=========================================================
>>
>> Le texte s'insère bien en pied de page mais pas l'image. J'ai une
>> runtime error sur la dernière ligne. Comment pourrais-je faire ?
>> Merci.
>> Rémi.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected] For
>> additional commands, e-mail: [email protected]
>>
>>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]