jay913 发表于 2010-10-2 12:19:00

[原创]批量修改块属性文字的宽度系数

<p><font face="Verdana">我们在添加文字过程中,经常会遇到这样一个问题,每次由于设置问题导致文字宽度不一样,&nbsp;&nbsp;针对上述问题编写了如下代码,希望能给大家带来方便。好的话请顶一下,谢谢</font></p>
<p><font face="Verdana">&nbsp;(defun C:TT (/ E I O SS WID X)</font></p>
<p><font face="Verdana">&nbsp; (princ</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp; "\n批量修改块属性文字的宽度系数 "</font></p>
<p><font face="Verdana">&nbsp; )</font></p>
<p><font face="Verdana">&nbsp; (if (and (setq WID (getreal "\n输入宽度系数: "))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq SS (ssget '((0 . "INSERT") (66 . 1))))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp; (repeat (setq I (sslength SS))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (and (setq E (ssname SS (setq I (1- I))))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq O (vlax-ename-&gt;vla-object E))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (mapcar</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '(lambda (X)</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vla-put-scalefactor X WID)</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vlax-safearray-&gt;list</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vlax-variant-value (vla-getattributes O))</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp;&nbsp;&nbsp; )</font></p>
<p><font face="Verdana">&nbsp; )</font></p>
<p><font face="Verdana">&nbsp; (princ)</font></p>
<p><font face="Verdana">)<br/></font></p>
<p>&nbsp;</p>

KO你 发表于 2020-8-15 00:29:50

KO你 发表于 2019-6-25 19:40
同名属性块有很多属性文字,改同名块的指定位置批量修改属性文字的宽度,能不能加上这功能,你这个程序是把 ...

老早就找过了,好像是老严的还是谁的处女作来的,很多修改都会出错或者变形,而且没有面板,操作太多步也不方便

alexmai 发表于 2020-11-28 15:14:59

KO你 发表于 2020-8-15 00:29
老早就找过了,好像是老严的还是谁的处女作来的,很多修改都会出错或者变形,而且没有面板,操作太多步也 ...

试试这个命令:BATTMAN

KO你 发表于 2019-6-25 19:40:38

同名属性块有很多属性文字,改同名块的指定位置批量修改属性文字的宽度,能不能加上这功能,你这个程序是把所有的都改了
加上《全部》《指定位置》

liminnet 发表于 2010-10-2 13:26:00

步行黔南 发表于 2013-10-18 00:14:12

若增加修改文字高度,图层和样式,对齐方式更加完美了

石井鱼 发表于 2013-10-18 13:52:23

对正样式是“调整”的不起作用

电赛加油 发表于 2020-8-22 00:37:25

多谢大神分享,学习一下!

zhangcan0515 发表于 2020-9-20 21:25:08

真是学习的好程序,自己在加上过滤。

流_星 发表于 2022-5-13 16:38:21

问一下,这个程序如何指定一个属性或者两个属性修改字宽,不需要都改字宽,有办法吗,
页: [1] 2
查看完整版本: [原创]批量修改块属性文字的宽度系数