lisp判断cad简体或繁体_LISP CAD求高手帮忙看看代码!实现图内文字筛选是否有重复文字?...

展开全部

(defun c:TT3 ( / #kw #k2 )

(setvar "cmdecho" 0)

(setvar "blipmode" 0)

(if (null vlax-dump-object) (vl-load-com) )

(defun ttes5 ()

(initget "T") (setq #kw (entsel "\n请选择文字或输入62616964757a686964616fe4b893e5b19e31333335313162文字(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未输入文字,程序退出!")

)

)

)

) )

(ttes5)

(while #kw

(if #kw (princ (strcat "\n框选包含文字 的对象")) )

(if (setq #kw (ssget "X"  (list (cons 0 "TEXT") (cons 1 #kw))))

(progn

(initget "V C S E")

(if (or (= %k1 nil) (= %k1 "S")) (progn (setq #k2 (getkword "\n选择文字或[选择(S)/移动(V)/复制(C)/删除(E)]:  ")) (if (= #k2 nil) (setq #k2 "S") ) ) )

(if (= %k1 "V") (progn (setq #k2 (getkword "\n选择文字或[选择(S)/移动(V)/复制(C)/删除(E)]:  ")) (if (= #k2 nil) (setq #k2 "V") ) ) )

(if (= %k1 "C") (progn (setq #k2 (getkword "\n选择文字或[选择(S)/移动(V)/复制(C)/删除(E)]:  ")) (if (= #k2 nil) (setq #k2 "C") ) ) )

(if (= %k1 "E") (progn (setq #k2 (getkword "\n选择文字或[选择(S)/移动(V)/复制(C)/删除(E)]:  ")) (if (= #k2 nil) (setq #k2 "E") ) ) )

(setq #k2 (strcase #k2))

(setq %k1 #k2)

(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")) (progn (sssetfirst nil #kw) (pause) ) )

)

)

)

(ttes5) )

)

(prompt "\n《TT3》选文字")

(prin1)

你参考一下这个程序,文字是否相同,要看文字内容,你的是查看(图元名)来比较,这个方法应当行不通。上面的程序是选择一个文字后,就会把相同的文字找出来。你增加条件,就可以把字体的高度限制了,颜色也可以增加。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值