天正文字转化为普通文字
请教高手,怎么把天正文字转化为普通文字,如天正单行文字转为普通单行文字,天正多行文字转为普通多行文字?想到的思路一是新建一个文字对象,然后修改属性和天正文字一致,但总是不能完全一致;另一种是将天正文字炸开再合并可以保证格式一致,但是不会写LISP;请高手给个代码吧
先ss找到天正文字,直接炸 补充一下,这个设置:混排文字转低版本,是否断开,只有高版本的天正建筑才有,如天正建筑2014,至于天正8.5,或者更低版本,可能没有。 ugl 发表于 2013-6-9 17:33
不会LISP,折腾了半天加一通百度,写了一个将天正单行文字转成普通CAD单行文字的程序,思路是将每个天正单行 ...
请问大神没有显示出来的天正文字如何处理成CAD单行文字 本帖最后由 wowan1314 于 2013-6-7 08:25 编辑
天正单行直接咋!
天正多行你要变cad多行就比较麻烦了!
而且你要做到完全一致,那几乎不可能 天正文字可以用天正文件布图下的分解对象转换为普通文字,比直接用炸开命令好,但天正多行文字会变成多个普通单行文字, 天正的文字。数字是单独的。无论你用天正的分解还是直接砸。都会变成几个单行文字
你再把多个单行文字合并的话,他们的字高就不相等。 所以说完全一致不可能。 shaoxin3736 发表于 2013-6-8 09:02 static/image/common/back.gif
天正文字可以用天正文件布图下的分解对象转换为普通文字,比直接用炸开命令好,但天正多行文字会变成多个普 ...
炸开是可以,但是其中的文字、数字经常会分成好多个,还需要自己一个个合并,很不方便 不会LISP,折腾了半天加一通百度,写了一个将天正单行文字转成普通CAD单行文字的程序,思路是将每个天正单行文字炸开再合并,运行正常,但总是有"未知命令“TZ2TXT2”"的出错提示,请帮我看下是哪里不对。
程序如下:
;天正文字转成普通CAD文字
(defun C:TZ2txt2 ()
(setq sset (ssget '((0 . "TCH_TEXT"))))
(setq num (sslength sset)
itm 0
)
(setq ss1 (ssadd))
(while (< itm num)
(setq hnd (ssname sset itm))
(setq ent (entget hnd))
(ssadd hnd ss1)
(command "explode" ss1 "")
(setq ss (ssget "p"))
(t2t ss)
(command "ERASE" ss1 "")
(setq itm (1+ itm))
)
(princ)
)
;;;================================================================
;;;功能:合并多个单行文字
;;;
;;;================================================================
(defun t2t (/ss)
(if ss ;(setq ss (ssget '((0 . "TEXT"))))
(progn
;;
(setq lst_str '()
i 0
)
(repeat (sslength ss)
(setq en (ssname ss i)
ent (entget en)
str (cdr (assoc 1 ent))
lst_str (cons str lst_str)
)
(if (= i 0)
()
(entdel en)
)
(setq i (1+ i))
)
;;
(setq en (ssname ss 0)
ent (entget en)
str (apply 'strcat (reverse lst_str))
ent (subst (cons 1 str) (assoc 1 ent) ent)
)
(entmod ent)
)
)
(princ)
)
;;;================================================================
wowan1314 发表于 2013-6-8 09:18 static/image/common/back.gif
天正的文字。数字是单独的。无论你用天正的分解还是直接砸。都会变成几个单行文字
你再把多个单行文字合 ...
就是这个问题,不过我也并不需要完全一致,只要能大概差不多即可,主要是转成普通文字方便用VBA处理,搜索查找都更方便,个人不会LISP,而天正又只有LISP接口,所以才费劲折腾转换 (command "explode" ss1 "")
改成:
(command "explode" ss1) 对天正的引出标注的文字无效的