barbichette Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 Bonjour, Je récupère souvent des plans fait par des autre entreprises,et je souhaite modifier les couleurs des textmult. Quand on créé un Textmult, on peut définir la couleur (et la police) de l'ensemble du textmult, mais on peut aussi à l'intérieur même modifier tout ou partie de format du texte. Y'a t'il une commande, ou un lisp pour modifier d'un coup toutes les formats du texte dans l'intérieur d'un textmult, ou faire que le contenu prenne le format de l'ensemble du textmult. Merci ***********************Rien ne sert de courrir, il faut partir à point.
lecrabe Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 Hello Tu fais une recherche sur StripMText .. Le Decapode Autodesk Expert Elite Team
lecrabe Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 Hello En plus je crois que (gile) avait fait qq chose dans ce domaine, mais je ne retrouve plus ! Sorry, Le Decapode Autodesk Expert Elite Team
oran Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 Bonjour,J'ai retrouvé ceci: Supprimer les propriétés qui auraient pu être forcées (couleur, fonte, caractères gras, italique ou sous-ligné) fonctionne aussi pour les textes de plus de 250 caractères et pour les hauteurs de texte forcées. (defun c:c_txt (/ ss n txt e_lst str start end lst)(while (not (setq ss (ssget '((0 . "MTEXT"))))))(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))(setqstr (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)))(setqe_lst (append (vl-remove-if'(lambda (x) (or (= (car x) 3) (= (car x) 1)))e_lst)lst))(entmod e_lst))(princ))
oran Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 ...re et ce lisp aussi... ; supprimer les propriétés qui auraient pu être forcées (couleur, fonte, caractères gras, italique ou sous-ligné) ; qu'il soit en textes ou en mtextes dans le dessin (defun c:mtxt2Std (/ ss n txt e_lst str)(setq ss (ssget "_X" '((0 . "*TEXT"))))(repeat (setq n (sslength ss))(setq txt (ssname ss (setq n (1- n)))e_lst (entget txt)str (cdr (assoc 1 e_lst)))(if (= "{" (substr str 1 1))(progn(while (and (setq start (vl-string-search "\\" str))(setq end (vl-string-search ";" str start)))(setq str (vl-string-subst""(substr str (1+ start) (- end start -1))str)))(if (= "\\L" (substr str 2 2))(setq str (vl-string-subst""(substr str 2 2)str)))(setq str (vl-string-right-trim"}"(vl-string-left-trim "{" str))e_lst (subst (cons 7 (getvar "TEXTSTYLE"))(assoc 7 e_lst)(subst (cons 1 str) (assoc 1 e_lst) e_lst)))(entmod e_lst))))(princ))
barbichette Posté(e) le 24 janvier 2011 Auteur Posté(e) le 24 janvier 2011 Un grand merci à vous 2 Ca marche parfaitement ***********************Rien ne sert de courrir, il faut partir à point.
lecrabe Posté(e) le 24 janvier 2011 Posté(e) le 24 janvier 2011 Hello Eh oui, comme d'habitude (gile) avait frappe ici :http://www.cadxp.com/modules.php?op=modload&name=XForum&file=viewthread&tid=11424#pid44749 Le Decapode Autodesk Expert Elite Team
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