Joël Keutgen wrote:
Bonjour à tous,
Au moyen d'une macro, je souhaiterais pouvoir insérer une image en
filigrane de chaque page.
J'ai suivi le how-to de Sophie Gautier (comment insérer un filigrane)
cfr. http://fr.openoffice.org/Documentation/How-to/indexht.html
Malheureusement, l'enregistreur de macro (OOo 1 et 2) ne réalise pas la
procédure décrite dans le point 2 dudit how to, à savoir :
"Sous *Format* -> *Page*, choisissez l'onglet *Arrière-plan*. Dans le
menu déroulant *Type*, sélectionnez *Image*.
Puis cliquez sur le bouton Parcourir et naviguez jusqu'à trouver votre
image."
D'avance je vous remercie d'examiner le prob et de me faire part de vos
solutions.
[...]
Sub Filigrane
Dim oDoc As Object, oCursor As Object
Dim StyleDePage, oPageStyles, oMaPageStyle
Dim cheminImage As String
oDoc = ThisComponent
oCursor = oDoc.Text.CreateTextCursor
'xray oDoc
' On identifie le style de page en cours
StyleDePage = oCursor.PageStyleName
' On récupère la collection de styles de page
oPageStyles = oDoc.StyleFamilies.getByName( "PageStyles" )
' et on récupère le style de la page en cours
oMaPageStyle = oPageStyles.getByName( StyleDePage )
' on défini alors l'arrière plan comme une image
' le chemin est à modifier selon l'image à placer
cheminImage = "/opt/openoffice.org2.0/share/gallery/bigapple.gif"
With oMaPageStyle
.BackGraphicUrl = convertToUrl( cheminImage )
.BackGraphicLocation = com.sun.star.style.GraphicLocation.AREA
End With
End Sub
Voilà une idée, basée sur les éléments du CH 11 de Programmation
OpenOffice.org" V1