在cad怎样才能一次全部改过来啊?难道只能一个一个的改吗?还有没有什么更快的方式啊?

如题所述

可以用(快速选择)的方法,找到所有的相同文字,在属性里面修改内容。当然也可以编程解决。

(defun c:TT2 ( / #kw #k2 )
  (if (null vlax-dump-object) (vl-load-com) )
  (initget "T") (setq #kw (entsel "\n请选择文字或输入文字(T)[输入文字(T)]: <选择文字> "))
  (cond
   ((= (type #kw) 'LIST)
    (if (= (vla-get-objectname (setq #kw (vlax-ename->vla-object (car #kw)))) "AcDbText")
     (setq #kw (vla-get-textstring #kw))
     (progn
      (setq #kw nil) (princ "\n错误的对象,请选择单行文字对象!")
     )
    )
   )
   ((member #kw (list "t" "T"))
    (if (= (setq #kw (getstring "\n请输入要选取的文字: ")) "")
     (progn
      (setq #kw nil) (princ "\n未输入文字,程序退出!")
     )
    )
   )
  )
  (if #kw (princ (strcat "\n框选包含文字 < " #kw " >的对象")) )
  (if (and #kw (setq #kw (ssget (list (cons 0 "TEXT") (cons 1 #kw)))))
   (progn
    (initget "V C S E") (setq #k2 (getkword "\n选择文字或[移动(V)/复制(C)/删除(E)]: <选择(S)> "))
    (if (null #k2)
     (sssetfirst nil #kw)
     (cond
      ((member #k2 (list "v" "V")) (command "_.Move" #kw "" pause) )
      ((member #k2 (list "c" "C")) (command "_.Copy" #kw "" pause) )
      ((member #k2 (list "e" "E")) (command "_.Erase" #kw "") )
      ((member #k2 (list "s" "S")) (sssetfirst nil #kw) )
     )
    )
   )
   (princ "\n未定义文字或未选择对象!")
  )
  (prin1)
)
(prompt "\n《TT2》框选文字")
(prin1)

这个程序复制到记事本,以后缀.lsp命名,是autolisp程序,加载到autocad就可以快速选择你需要的文字了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-10
从图片上显示看,是字体丢失的问题,查看一个这个字体用的是什么字体,从网上下载一个,放到cad中就能解决所有的问题。
第2个回答  2014-03-10
下载个字体吧
相似回答