[求助]一个能够将cad文件中的所有字体重新定义为HZTXT字体的lisp
<p>[求助]一个能够将cad文件中的所有字体重新定义为HZTXT字体的lisp</p><p>因为hztxt相对在cad中占用小,放大缩小以及其他操作都会快很多,但是手工在一个一个的定义就相当麻烦, 请求高手帮助。</p> <p>1、新建一个HZTXT字体样式:(command "STYLE" "HZTXT" "isocp,hztxt" "" "0.75" "" "" "" ) ;HZTXT样式 </p><p>2、然后把选择所有字: (setq ss_text (ssget "X" (list (cons -4 "<or") (cons 0 "TEXT") (cons 0 "MTEXT") (cons 0 "ATTDEF") (cons -4 "or>") )))</p><p>3、更改为这个样式。 (if ss_text (ss_entmod ss_text (list (cons 7 "HZTXT") (cons 41 0.75) ) ) );if</p><p>;函数ss_entmod</p><p>(defun ss_entmod(ss_ssget tylst / en ed new old ) <br/> (while (> (sslength ss_ssget) 0)<br/> (setq en (ssname ss_ssget 0))<br/> (setq ed (entget en)) <br/> (foreach new tylst<br/> (if (setq old (assoc (car new) ed))<br/> (setq ed (subst new old ed))<br/> (setq ed (append ed (list new)))<br/> ) ;if<br/> ) ;foreach<br/> (entmod ed) <br/> (ssdel en ss_ssget) <br/> ) ;while<br/>) ;defun</p> 不行,请写一个简便完整的lisp吧! <p>都写成这样了,你都不会,无可救药</p>
页:
[1]