1

Je veux changer la police et mettre son style en gras. J'ai deux problèmes:Comment changer la police?

  • changement CharWeight œuvres mais pas CharFontName
  • il applique "gras" à l'ensemble du paragraphe, non seulement à la sélection

Voici mon code:

sub AddAnimation 
    xTextCursor = ThisComponent.CurrentController.Selection(0) 
    xText = xTextCursor.getText() 
    xText.CharFontName = "Consolas" 
    xText.CharWeight = com.sun.star.awt.FontWeight.BOLD 
end Sub 
+0

Quel est le nom de la police actuellement défini? Essayez de commencer avec un document vide et créez un bloc de texte. –

Répondre

0

L'appel getText() obtient le texte entier, pas seulement la partie sélectionnée.

Sub ChangeFont 
    xTextCursor = ThisComponent.CurrentController.Selection(0) 
    xTextCursor.CharFontName = "Consolas" 
    xTextCursor.CharWeight = com.sun.star.awt.FontWeight.BOLD 
End Sub 

Le nom de la police a changé lorsque j'ai essayé, en utilisant LO et AOO.

result

Utilisez-vous CTL or CJK scripts? Si oui, alors il doit être CharFontNameComplex ou CharFontNameAsian. Cependant, si CharWeight a fonctionné, alors cela ne doit pas être le problème.

Encore une supposition: Peut-être qu'un style l'écrase.

+0

Comment changer le style alors? –

+0

Allez dans "Styles et formatage" dans la barre latérale pour voir si c'est le problème. Apparemment, les styles pertinents sont appelés [Styles graphiques] (https://help.libreoffice.org/Impress/Styles_and_Formatting#Graphic_Styles). –