daisenson 发表于 2022-7-6 07:55:59

定义宽度多行文字列表

大家好,
多行文字有一个属性,即定义宽度(纸张和模型)。它似乎是只读的,我只能通过点击文本夹点和手动拉伸来修改它。是否有lisp例程可以获取图形中的所有MText,并将定义的宽度因子乘以100?
 
谢谢

Tharwat 发表于 2022-7-6 08:12:08

这有什么帮助吗?
 

(defun c:Test (/ ss i sn)
(vl-load-com)
(if (setq ss (ssget "_:L" '((0 . "MTEXT"))))
   (repeat (setq i (sslength ss))
   (vla-put-width (vlax-ename->vla-object (ssname ss (setq i (1- i))))
       0. ))
   (princ)
)
(princ)
)

daisenson 发表于 2022-7-6 08:36:48

嗨,Tharwat,不幸的是,它不工作。缩放多行文字后,我应用了脚本,选择了文字,但纸张和空间定义的宽度保持不变。还有其他想法吗?
 
Thnx公司

MSasu 发表于 2022-7-6 08:44:49

请调查此例程的代码。

daisenson 发表于 2022-7-6 09:01:34

MSasu,
这太棒了,代码将边界框设置为文本宽度,但通过操纵一些值,可以通过缩放文本所需的因子来缩放边界框的值,因此当我缩放文本时,它不会受到边界框的影响。
 
谢谢
页: [1]
查看完整版本: 定义宽度多行文字列表