AutoLISP修改文字高度,代码如下。
(defun c:test()
(setq old_hh (getvar "textsize"))
(setq str_hh (strcat "\n输入新字高<" (rtos old_hh 2) ">:"))
(setq hh (getdist str_hh))
(if (null hh) (setq hh old_hh))
(setq ss (ssget))
(setq i 0)
(setq nn (sslength ss))
(repeat nn
(setq ssn (ssname ss i))
(setq ssdata (entget ssn))
(setq sstyp (cdr (assoc 0 ssdata)))
(if (= sstyp "TEXT")
(progn
(setq old_hh (assoc 40 ssdata))
(setq new_hh (cons 40 hh))
(setq ssdata (subst new_hh old_hh ssdata))
(entmod ssdata)
)
)
(setq i (1+ i))
)
(prin1)
)
代码完。
只对单行文字有效。