schuler said:I am trying to select all text in a drawing and change the style to a predefined style. Not sure how to select only text (ssget?). I am kinda new to Lisping...any help would be appreciated.
Thanks.
(defun c:chgsty
(prompt "GLOBAL TEXT STYLE CHANGE.")
(terpri)
(setvar "cmdecho" 0)
(initget 1 "SE ST ")
(setq G (strcase (substr (getkword "SElection/<STyle>: ")1 2))) (cond ((= G "SE") (setq A (ssget)) (setq B (sslength A)) (initget 1) (setq C (getstring "\nEnter new text style: ")) (extang C) (while (> B 0) (setq B (1- B)) (setq D (ssname A B)) (setq D (entget D)) (setq E (assoc 7 D)) (setq F (cons 7 C)) (setq D (subst F E D)) (setq H (assoc 51 D)) (setq I (cons 51 J)) (entmod (subst I H D)) ) (setq A nil) ) ((or (= G "ST") (= G "")) (initget 1) (setq A (strcase (getstring "\nEnter text style to change: "))) (initget 1) (setq C (getstring "\nEnter new text style: ")) (setq D (entnext)) (extang C) (while D (princ ".") (setq E (entget D)) (if (and (= "TEXT" (cdr (assoc 0 E))) (= A (cdr (assoc 7 E)))) (progn (setq F (assoc 7 E)) (setq G (cons 7 C)) (setq E (subst G F E)) (setq H (assoc 51 E)) (setq I (cons 51 J)) (entmod (subst I H E)) ) ) (setq D (entnext D)) ) ) ) (princ)
)
Walt said:Try the following I have been using for over 10 years:
WE