dfbiagio Posté(e) le 18 septembre 2009 Posté(e) le 18 septembre 2009 Bonjour à tous,J'ai passé plus d'une heure pour modifier des Mtext. En effet, j'ai reçu un fichier avec un style de texte appelé " TITRE " avec comme font ISOCP.SHX, j'ai modifié ce style avec un font ISOCPEUR.SHX mais rien n'a été modifié, car tous les textes étaient forcés avec du technibold. J'ai dû sélectionner texte par texte et supprimer ceci --> {\Technic\b0|i0|p2; Quelqu'un a-t'il un lisp qui pourrait le supprimer sans devoir sélectionner texte par texte.J'espère avoir été clair bien à vous
(gile) Posté(e) le 18 septembre 2009 Posté(e) le 18 septembre 2009 Salut, Tu n'as pas du faire beaucoup de recherche, le sujet a encore été abordé récemment.Ça doit être la troisième fois que je copie/colle ce message : Il existe des LISP qui suppriment les formatages dans les mtext.J'avais fait un truc un peu radical ici pour supprimer tous les formatages.Depuis, j'en ai fait un plus abouti mais je ne peux pas le publier ici.Il y a aussi StripMtext qui marche pas mal et permet de choisir les formatages à supprimer. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 18 septembre 2009 Posté(e) le 18 septembre 2009 Bonsoir, ça conforte ceci... :cool: Christian [Edité le 18/9/2009 par rebcao] Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
pascal19 Posté(e) le 18 septembre 2009 Posté(e) le 18 septembre 2009 donné par LUDWIG il y a peu: ; supprime le formatage forcé des mtext (defun c:supmt (/ ss n txt e_lst str start end lst) ;;;(while (not (setq ss (ssget '((0 . "MTEXT")))))) (if (setq ss (ssget "_X" '((0 . "MTEXT"))))(progn (repeat (setq n (sslength ss)) (setq txt (ssname ss (setq n (1- n))) e_lst (entget txt) str (apply 'strcat (mapcar 'cdr (append (vl-remove-if-not '(lambda (x) (= (car x) 3)) e_lst) (list (assoc 1 e_lst)) ) ) ) ) (while (setq start (vl-string-search "{\\" str)) (setq str (vl-string-subst "" "{" (vl-string-subst "" "}" str start) start ) ) ) (setq start 0) (while (setq start (vl-string-search "\\" str start)) (cond ((= "\\P" (substr str (1+ start) 2)) (setq start (1+ start) end (1+ start) ) ) ((= "\\L" (substr str (1+ start) 2)) (setq end (+ (vl-string-search "L" str start) 2)) ) ((= "\\l" (substr str (1+ start) 2)) (setq end (+ (vl-string-search "l" str start) 2)) ) (T (setq end (+ (vl-string-search ";" str start) 2))) ) (setq str (vl-string-subst "" (substr str (1+ start) (- end start 1)) str ) ) ) (setq lst nil) (if (< 250 (strlen str)) (progn (while (< 249 (strlen str)) (setq lst (cons (cons 3 (substr str 1 250)) lst) str (substr str 251) ) ) (setq lst (reverse (cons (cons 1 str) lst))) ) (setq lst (cons (cons 1 str) lst)) ) (setq e_lst (append (vl-remove-if '(lambda (x) (or (= (car x) 3) (= (car x) 1))) e_lst ) lst ) ) (entmod e_lst) ) (princ) ) )) a+
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant