Macro to add Legend below image

Hi,

I Try to find macro code to add legend below image. I found “.uno:InsertCaptionDialog” but I don’t know about Args.

Is There a way to do that

Thanks

sur l’image sélectionnée ?

C’est encore plus tordu, l’image vient du presse papier donc

On fait un Paste puis j’ai besoin d’ajouter la legende, fonctionne sans probléme avec Office mais LibreOffice sur ce sujet pas de doc.

Bonjour et bienvenue @ANTOCI.ALAIN ,
dans cette section, on est censé échanger en français.

Une tentative, inspirée par cette discussion

sub insertcaption
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:InsertCaptionDialog", "", 0, Array())
theFrame=thisComponent.currentSelection
	theText=theFrame.text
	
	'Quelques ajustements
	theFrame.height=theFrame.height+100
	theText.string="Légende"
	theText.start.paraStyleName="Standard"
	theText.start.charHeight=2
	theFrame.textWrap=com.sun.star.text.WrapTextMode.THROUGHT

end sub

Ce que j’en comprends
L’objet thisComponent.currentSelection a des propriétés qu’il faut explorer.
Sélectionner la variable theFrame
Avec F7, vous insérez un témoin permettant de lister les propriétés et leurs valeurs
Avec F8, vous exécutez la macro pas à pas (1 appui sur F8 = 1 pas)
Arrêtez-vous quand le curseur d’exécution arrive sous la ligne theFrame=thisComponent.currentSelection

Déroulez la fenêtre du témoin, en bas de l’écran, vous pourrez chercher quelles propriétés que vous stockerez dans des variables (cf. quelques ajustements pour les exemples).

NB : je n’ai pas de réelles connaissances, seulement quelques notions que je tâche d’améliorer en répondant au sujet. Là j’explore…

Bonjour,

C’est presque ça mais le dialogue d’ajout de legende s’ouvre qq soit les parametres que l’on passe. J’aurais besoin que ce soit automatique, l’idée est de passer en parametre le nom de la legende. J’ai essayé plusieurs parametres issu du F7 avec les bean.property mais sans resultat.

Encore merci

Bonjour,
dans ce cas je pense que l’objet InsertCaptionDialog n’est pas le bon. Il faut gérer les propriétés directement dans la macro. Je ne sais pas faire à ce jour.
Désolé.