Bonjour,
Je n’arrive pas à trouver la propriété qui permet de modifier par macro l’interligne d’un stylede paragraphe.
J’avais trouvé “ParalineSpacing” mais soit ce n’est pas le bon, soit je ne le manipule pas correctement.
Si quelqu’un connaît ?
Merci d’avance.
Claude
Merci, mais les commandes .uno dans un module basic ne fonctionnent pas “propriiété ou méthode non trouvé”
Claude
Bonjour,
l’enregistreur de macro me propose ceci
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "LineSpacing.Mode"
args1(0).Value = 1
args1(1).Name = "LineSpacing.Height"
args1(1).Value = 1500
dispatcher.executeDispatch(document, ".uno:LineSpacing", "", 0, args1())
Value = 1500
correspond à 1,5 cm. J’ai modifié cette valeur dans le code de la macro et obtenu les changements adéquats.
Merci, je vais rechercher, peut-être que je n’utilse pas le bon service car il ne reconnaît pas LineSpacing.
Claude
Bonsoir,
@njhub : la copie d’écran montre l’interligne des menus de l’interface…pas du document
Il faut aller voir les propriétés des styles. Pour ça, xray est votre ami.
Ou bien l’Outil de développement de Libreoffice :
On y voit que la propriété est ParaLineSpacing et une structure de la forme com.sun.star.style.LineSpacing
Il faut donc récupérer un style du document (Standard, pour l’exemple) et modifier la propriété avec une structure convenable :
oDocSource = ThisComponent
oFamilies = oDocSource.StyleFamilies
oStyles = oFamilies.getByName("ParagraphStyles")
oStyle = oStyles.getByName("Standard")
Dim oEspacement as new com.sun.star.style.LineSpacing
oEspacement.Height = 200 ' c'est gros, et ça se voit !!
oEspacement.Mode = 0
oStyle.ParaLineSpacing = oEspacement
En cadeau un document permettant de modifier et rétablir l’interligne avec deux boutons.
Interligne.odt (43,4 Ko)
Cordialement,
JM
PS : Je ne sais pas à quoi correspond le mode.
Merci, merci.
J’avais mal déclaré ton oespacement j’en avais fait une instance et non un objet.
En travaillant en pas à pas je voyais bien les valeurs mais il ne faisait pas la mise à jour.
Le mode, après bien des tests correspond au type d’interligne.
Quand on choisit “au moins” il est à 1
Quand on choisit “interligne”, il est à 2
Quand on choisit “fixe” il est à 3
Dans les autres cas il reste à 0
Bonne journée
Claude