jiang82040 发表于 2005-1-19 12:08:00

[LISP]请教如何将CAD中的文字保存到TXT文本中?

请教如何将CAD中的文字保存到TXT文本中,我用了write-line,写不进去,说是consp参数错误,请各位大哥帮忙看看:


;;;将CAD中文字保存在TXT文本中<BR>(defun c:writetxt(/ fle f index num ent ss1 str)<BR>       (setvar "cmdecho" 0)<BR>       (setq fle (findfile "txt.txt")) <BR>       (if (not fle) <BR>                       (setq fle (getfiled "请选择要保存文件" "txt1" "txt;*" 0)) <BR>       ) <BR>       (setq f(open fle "w"))<BR>       (princ "\n输入你要存入的文本:")<BR>       (setq ss1 (ssget (list (cons 0 "text"))))<BR>       (setq index 0)<BR>       (setq num (sslength ss1))<BR>       (repeat num<BR>                       (setq ent (ssname ss1 index))<BR>                       (setq str (cadr (assoc 1 (entget ent))))<BR>                       (setq str (strcat "(" str ")"))<BR>                       (write-line str f)<BR>                       (setq index (1+ index))<BR>       )<BR>               (close f)<BR>       (setvar "cmdecho" 1)<BR>       (princ)<BR>)<BR>

f5612140 发表于 2005-1-19 12:20:00

(setq str (cdr (assoc 1 (entget ent))))

jiang82040 发表于 2005-1-19 12:29:00

可以了,谢谢,非常感谢谢f5612140朋友!!

jiang82040 发表于 2005-1-19 12:38:00

可是只对text对象有效,请问要想对Mtext有效的话,如何做?

alin 发表于 2005-1-19 12:43:00

Change (setq ss1 (ssget (list (cons 0 "text")))) to


                                                                                                       (setq ss1 (ssget (list (cons 0 "mtext"))))


Hopefully your Mtexts haven't got too much format code.
页: [1]
查看完整版本: [LISP]请教如何将CAD中的文字保存到TXT文本中?