Bonjour, Jean-François,
Une fois encore, merci ! 
Même si j'avais bien fait l'insertion, tu m'as quand même mis sur la
voie.
Pour ceux qui sont intéressés, sous libreoffice 7.0-Debian 10 :
-> les types png, bmp et jpg sont acceptés sans pb.
-> en revanche, il n'y a pas récupération automatique du chemin courant
du doc courant, donc, pour l'image, il faut indiquer le chemin complet
(c'est ce qui m'a mis sur la voie, dans le code de Jean-François).
-> l'ordre des opérations a évidemment de l'importance (cf code de
Jean-François).
Cordialement,
O.J.
Le lundi 24 août 2020 à 09:36 +0200, jean-francois a écrit :
> Bonjour oj,
> 
> tu y étais presque... Il manquait l'insertion de la section créée
> dans 
> le texte ;)
> 
> Code testé fonctionnel (remplacer l'adresse de l'image par qqch
> d'utile) :
> 
> 8< ----------------------------------------------------------
> 
> Option Explicit
> 
> Sub Main
> 
>       Dim lo_Doc As Object
>       Dim lo_Sec As Object
>       Dim lo_TCur As Object
> 
>       lo_Doc = ThisComponent
>       lo_TCur = lo_Doc.Text.createTextCursor
>       lo_TCur.gotoEnd(False)
> 
>       lo_Sec = CreateSectionAtCursor(ThisComponent, lo_TCur,
> "MaSection", 
> "/home/jean-francois/Images/Debian.png")
>       
> End Sub 'Main
> 
> Function CreateSectionAtCursor(ByRef pDoc As Object, pCursor As
> Object, 
> pSecName As String, pBGName As String) As Object
> 'creates a section within a given document.
> 'Input:
> '-- pDoc: the target document.
> '-- pCursor: the text cursor where to insert the section.
> '-- pSecName: the section name.
> '-- pBGName: the section background image file name (in URL or OS
> form).
> 'Output: the created section object or Null if an error occurred.
> 
>       Dim lo_Sec As Object
>       
>       On Local Error Goto ErrHandler
>       
>       lo_Sec = pDoc.createInstance("com.sun.star.text.TextSection")
>       lo_Sec.Name = pSecName
>       lo_Sec.backgraphicURL = ConvertToURL(pBGName)
>       pDoc.Text.insertTextContent(pCursor, lo_Sec, False)
>       
>       ErrHandler:
>               'do nothing
> 
>       CreateSectionAtCursor = lo_Sec
> End Function 'CreateSectionAtCursor
> 
> ---------------------------------------------------------- >8
> 
> 
> Si vous répondez, merci de penser à utiliser la fonction "répondre à 
> tous" de votre logiciel de courrier électronique de façon que la
> liste 
> reçoive une copie de votre réponse.
> 
> Bien cordialement,
> Si vous répondez, merci de penser à utiliser la fonction "répondre à 
> tous" de votre logiciel de courrier électronique de façon que la
> liste 
> reçoive une copie de votre réponse.
> 
> Bien cordialement,
> -- 
> Jean-Francois Nifenecker, Bordeaux
> 
> 


-- 
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Répondre à