12 messages in org.openoffice.fr.progRe: [prog] [Fwd: Re: [users-fr] [text...
FromSent OnAttachments
Agnès SimonetJun 27, 2004 9:32 am 
Agnès SimonetJun 27, 2004 9:32 am 
Agnès SimonetJun 27, 2004 9:51 am 
Yves ChaufourJun 27, 2004 1:31 pm 
Agnès SimonetJun 27, 2004 2:06 pm 
Jean Michel PIERREJun 28, 2004 3:28 am 
Agnès SimonetJun 28, 2004 4:06 am 
Jean Michel PIERREJun 28, 2004 4:46 am 
Agnès SimonetJun 28, 2004 5:38 am 
Jean Michel PIERREJun 28, 2004 6:42 am 
Jean-Michel CHASTAGNIERJun 28, 2004 6:54 am 
Agnès SimonetJun 28, 2004 1:07 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] [Fwd: Re: [users-fr] [texte] encadrement d'un mot]Actions...
From:Agnès Simonet (agne@laposte.net)
Date:Jun 27, 2004 9:51:15 am
List:org.openoffice.fr.prog

Première amélioration demandée (sur la liste user) :

Ta macro fonctionne très bien pour encadrer une sélection de mots dans OOoWriter. Par contre, elle modifie la police de caractères de la sélection. Comment faire pour que la police de caractères soit respectée ? J.M

Et solution à tester :

J'ai réussi à gérer la police, la taille la couleur, le gras, l'italique et le souligné. Si la sélection contient plusieurs formats de caractères, c'est la format du caractère à droite du curseur qui est affecté à l'ensemble du texte contenu dans le rectangle d'encadrement.

Si vous pouvez tester et proposer des améliorations, j'essaierai d'en tenir compte dans la limite de mes capacités.

------------------------ Sub Encadre_selectiontexte 'le texte sélectionné ne doit pas contenir des sauts de ligne 'ou des sauts de paragraphe sinon bizarreries 'v0.2.0

Dim MonDocument As Object, MonTexte As Object Dim MonCurseur As Object Dim CurseurVisible As Object Dim MonRectangle As Object Dim TexteDeLaSelection As String Dim CurseurRectangle As Object

'récupère la sélection MonDocument = ThisComponent MonTexte = MonDocument.Text CurseurVisible = MonDocument.currentcontroller.ViewCursor TexteDeLaSelection = CurseurVisible.String

'positionne le curseur d'écriture MonCurseur= MonTexte.createTextCursor MonCurseur = MonTexte.createTextCursorByRange(CurseurVisible)

'crée un mini rectangle TailleRectangle.Width = 1000 TailleRectangle.Height = 1000 MonRectangle=MonDocument.createInstance("com.sun.star.drawing.TextShape") MonTexte.insertTextContent( MonCurseur,MonRectangle,true) MonRectangle.Size = TailleRectangle

'ancrage comme caractère MonRectangle.AnchorType=com.sun.star.text.TextContentAnchorType.AS_CHARACTER

'contour MonRectangle.LineStyle = com.sun.star.drawing.LineStyle.SOLID

'centre le rectangle MonRectangle.VertOrient = com.sun.star.text.VertOrientation.CHAR_CENTER

'centre verticalement le texte du rectangle MonRectangle.TextVerticalAdjust = com.sun.star.drawing.TextVerticalAdjust.CENTER

'adapte la taille du rectangle à celle du texte MonRectangle.TextAutoGrowWidth = true MonRectangle.TextAutoGrowHeight = true

'place un curseur dans le rectangle TexteRectangle = MonRectangle.Text CurseurRectangle=TexteRectangle.createTextCursor

'écrire dans le rectangle 'récupère le format de caractère 'police,taille,gras,italique,souligné,couleur CurseurRectangle.CharFontName = CurseurVisible.CharFontName CurseurRectangle.CharHeight = CurseurVisible.CharHeight CurseurRectangle.CharWeight = CurseurVisible.CharWeight CurseurRectangle.CharPosture = CurseurVisible.CharPosture CurseurRectangle.CharUnderLine = CurseurVisible.CharUnderLine CurseurRectangle.CharColor = CurseurVisible.CharColor 'écrit avec format de caractère TexteRectangle.insertString(CurseurRectangle,TexteDeLaSelection,TRUE)

End sub

Agnès S.