J’ai une question, je suis en train de travailler sur une macro dans solidworks qui permet d’écrire un texte puis de lui appliquer un enlèvement de matière. La macro fonctionne mais je ne comprend pas comment faire pour modifier la police de mon texte dans ma macro. Auriez-vous des solutions ?
C’est l’objet ITextFormat de l’API qui permet de gérer les polices de textes dans SolidWorks.
Si c’est un texte d’esquisse, l’esquisse doit être en cours d’édition.
Dans le très court exemple joint, il faut également avoir sélectionné le texte pour lui appliquer les changements.
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim SkText As SldWorks.SketchText
Dim swTextFormat As SldWorks.TextFormat
Dim bRet As Boolean
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swSelMgr = swModel.SelectionManager
Set SkText = swSelMgr.GetSelectedObject6(1, -1)
Set swTextFormat = SkText.GetTextFormat
'Change text to be 10mm, bold, italic, and Comic Sans MS font
swTextFormat.TypeFaceName = "Comic Sans MS"
swTextFormat.CharHeight = 0.01
swTextFormat.Bold = True
swTextFormat.Italic = True
bRet = SkText.SetTextFormat(False, swTextFormat)
End Sub