Bonjour,
J'avais récupéré les macros du livre de Bernard Marcelly, Laurent Godard
(voir code ci-dessous)
Je voudrais lorsque j'insère mon image garder sa taille réelle mais si
j'ai bien compris, il faut transformer la taille en pixel en cm (ce que
fait la fonction "resizeimageByWith".
Sauf que je ne sais pas comment trouver la résolution pour faire cela.
Si quelqu'un a une solution, merci d'avance
Claude
Option Explicit
Sub AjouterImage()
Dim monDocument As Object, monTexte As Object
Dim monCurseur As Object, monImage As Object
Dim positionImage As New com.sun.star.awt.Point
monDocument = ThisComponent
monTexte = monDocument.Text
monCurseur = monTexte.createTextCursor
monCurseur.gotoNextParagraph(False) ' déplacer le curseur
positionImage.x = 1500 ' 15 mm à droite du point d'ancrage
positionImage.y = 1300 ' 13 mm en dessous du point d'ancrage
monImage=
monDocument.createInstance("com.sun.star.drawing.GraphicObjectShape")
monImage.GraphicURL = ConvertToURL("C:\Docs OpenOffice\LogoOpenOffice.png")
monImage.AnchorType = com.sun.star.text.TextContentAnchorType.AT_PARAGRAPH
monTexte.insertTextContent(monCurseur, monImage, false)
resizeImageByWidth(monImage, 5500) ' largeur en 1/100 de mm
monImage.Position = positionImage
monImage.Surround = com.sun.star.text.WrapTextMode.RIGHT
monImage.Name = "Logo1" ' donner un nom à cette image
End Sub
Sub resizeImageByWidth(uneImage As Object, largeur As long)
Dim imageInfo As Object, Proportion As Double, Taille1 As Object
imageInfo = uneImage.Graphic
Taille1 = imageInfo.SizePixel
Proportion = Taille1.Height / Taille1.Width
Taille1.Width = largeur
Taille1.Height = Taille1.Width * Proportion
uneImage.Size = Taille1
End Sub
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être
supprimés
Context
- [fr-users] Macro insertion image · claude
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.