批量改字高与字宽
批量改字高与字宽,支持多行文本、单行文字、属性字。快捷键TT1批量改字高
快捷键TT2批量改字宽
请大师看看怎么弄才能支持多行文本的字宽也可以改
(defun ch_dxf(en num ch / old_num new_num ent)
(if (setq ent (entget en)
new_num (cons num ch)
old_num (assoc num ent))
(entmod(subst new_num old_num ent))
(entmod(reverse(cons new_num (reverseent))))))
(defun c:tt1( / ss n x ww)
(setq ss (ssget '((0 . "text,mtext,attdef"))))
(setq ww (getreal "请输入字高:"))
(repeat (setq N (sslength SS))
(apply '(lambda (x) (ch_dxf x 40 ww))
(list (ssname SS (setq N (1- N))))))
(princ))
(defun c:tt2( / ss n x ww)
(setq ss (ssget '((0 . "text,mtext,attdef"))))
(setq ww (getreal "请输入字宽:"))
(repeat (setq N (sslength SS))
(apply '(lambda (x) (ch_dxf x 41 ww))
(list (ssname SS (setq N (1- N))))))
(princ))
多行改文字宽高比
guosheyang 发表于 2022-4-18 20:55
多行文字也可以改宽度的,属性虽然不能直接改,可以通过其他方式改的
分享一下源码咯
(gkd(setq ss(ssget))(setq widfactor(getreal"\n请输入宽度")))
输入宽度后显示
调用(*push-error-using-command*)前无法从 *error* 调用(command)。
建议将(command)调用转换为(command-s) pizi158545086 发表于 2023-6-9 20:14
这个可以改单独选中属性文字改字宽吗?不需要全部字体一起改
你要的单个调整文字宽度
程序来自Lee Mac,也可以去他的官网下
很好用的程序,谢谢分享,希望高手来解决 本帖最后由 zhangcan0515 于 2022-4-16 13:31 编辑
多行文字就不行的,见过标注文字修改字宽的 标注文字也属于多行文字,是常青藤插件做出来的,它是C#写的插件。 特性里面改不一样吗? Q晋胡 发表于 2022-4-16 21:43
特性里面改不一样吗?
特性只有高度没有宽度,只能一个一个进去编辑器去改,效率不高,如果有大批量需要修改,还是要追求插件方便 本帖最后由 Q晋胡 于 2022-4-17 00:09 编辑
KO你 发表于 2022-4-16 23:04
特性只有高度没有宽度,只能一个一个进去编辑器去改,效率不高,如果有大批量需要修改,还是要追求插件方 ...
海龙软件里面就有,可以参考一下 Q晋胡 发表于 2022-4-17 00:06
你是指属性块文字的宽度吧?
朋友,请认真看题好吗,都说了是批量修改多行文本,单行文字,和没成块的属性字咯,
现在是多行文本改不了字宽,我一直讨论完善多行文本字宽编辑问题 多行文字也可以改宽度的,属性虽然不能直接改,可以通过其他方式改的
调用(*push-error-using-command*)前无法从 *error* 调用(command)。
建议将(command)调用转换为(command-s)
这个常出现,很麻烦,哪位大神做个程序能一次处理最好