本帖最后由 arthwon 于 2012-3-15 08:25 编辑
想修改选择集里的文字的文字样式。
平时手工修改的时候,只要手动选择几个文字,然后在工具栏上选择文字样式就直接改好了,但是这个操作没有命令行。
后来查到change命令可以修改,但是一次只能处理一个文字对象!
不得已只能做了一个循环来一个个处理,但是效率太低了!!
请问要怎么能一次全部处理所有选择的文字对象?
 - (if (setq ss (ssget "p"
- '((0 . "TEXT")
- (7 . "Standard")))
- ss_num (- (sslength ss) 1) ;计算文字选择集的图元个数,需减1,因为编号是从0开始
- )
- (progn
- (while (>= ss_num 0) ;如果编号大于等于0就一直循环处理
- (setq ss_text (ssname ss ss_num)) ;将选择集的最后一个图元提取
- (command "change" ss_text "" "" "" "TSSD_Rein" "300" "" "")
- ;处理提取的图元,change函数只能一次处理一个图元
- (setq ss_num (- ss_num 1)) ;编号减1以便处理下一个图元
- )
- )
- )
|