Aller au contenu

Textmult changer police en style


yusukens82

Messages recommandés

J'ai ce qu'il te faut:

 

(defun bl:mtext-killpolice (entity / object string regex newstring)
(or vlax-create-object (vl-load-com))
(setq object (vlax-ename->vla-object entity))
(setq string (vla-get-textstring object))
(setq regex (vlax-create-object "vbscript.regexp"))
(vlax-put-property regex 'pattern "\\{\\\\f[^;]+;([^}]+)}")
(vlax-put-property regex 'global :vlax-true)
(setq newstring (vlax-invoke-method regex 'replace string "$1"))
(vlax-release-object regex)
(vla-put-textstring object newstring))

 

(vla-get-textstring (vlax-ename->vla-object (car (entsel)))) te montrera comment AutoCAD identifie les passages de textes dont la typologie a été forcée.

La police est forcée via la structure {\\f...;texte dont la police est forcée}.

Avec une expression régulière, il est possible de supprimer le {\\f...; et le }

 

 

Attention s'il y a un } dans ton texte, ca va merder.

 

 

PS/ est-ce qu'un modo pourrait déplacer ce sujet vers le forum ad hoc (Pour aller plus loin en Lisp), merci :-)

Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

J'avais fait ça, qui fonctionne assez bien, mais supprime tous les formatages.

sinon, il y a le "célèbre" StripMtext 5.0 de Steve Doman et Joe Burke (un travail de plusieurs années) qui permet de choisir les formatages à supprimer (voir sur TheSwamp).

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité