注释性文字转换
有人有LISP帮助将注释性文本更改为非注释性文本吗?我可以快速选择并更改样式,但我希望能够根据注释性文本的“模型文本高度”值设置每一位文本的文本高度。我们的办公室已经购买了一些AutoCAD FreeStyle许可证,允许我们的技术人员创建现场检查和现场调查,并至少将初稿输入CAD,而不是在填塞的餐巾纸上乱涂乱画。这很好。
自由泳有一些问题和限制,我必须处理一旦我得到这些图纸虽然。我没有把自由泳弄得一团糟,看看是否有办法解决这个问题。我正在绘制的图形中有文字,但FreeStyle似乎使用注释性文字来调整大小。因此,一旦图纸最终打印出来,它们的比例很少适合注释性特征。
格伦
PS编辑:
目前,我正在处理它,将标题栏插入模型空间,缩放它,并根据Mspace进行绘图,但我对此并不满意。(上传示例)
自由泳anno txt。图纸 似乎你在破坏注释性文本的目的。
Command: CHANGE
Select objects: Specify opposite corner: 2 found
Select objects:
Specify change point or : P
Enter property to change
: A
Make Annotative? <Yes>:
Enter property to change 是的,这正是我想要做的——删除注释性文本。不管是好是坏,我们在主图形中没有使用注释性文字。但是,只需将其更改为具有大小的非注释性螺钉。我注意到,注释性文字的属性之一是在模型空间和图纸空间中显示的大小。我要做的是逐步遍历所有注释性文字,查询其在模型空间中显示的大小,将其设置为非注释性,并将文字高度设置为该大小。
是否有LISP命令可以回显选定多行文字的所有属性? 正如我在上面展示的那样,只需使用CHANGE。如果它是注释性的,它会将其更改为非注释性,并保持大小不变。 我自己从来没做过,但用艾伦的指示。。。
(defun c:test ( / ss )
(if (setq ss (ssget "_X" '((0 . "TEXT,MTEXT"))))
(command "_.change" ss "" "_P" "_A" "_No" "")
)
(princ)
) 那会有用的。我有时使用CHANGE将非注释性文本(取自旧图形)转换为注释性文本。 我尝试使用change命令,结果如下:左侧原始,右侧更改:
使用change命令获得以下信息:
来自A2K帮助
-大卫 我希望它是那么简单,但在上面的“好”版本的左下角四分之一处可以看到ucs图标。与文本平行。 ??
(defun c:Test (/ ss)
(if (setq ss (ssget "_:L" '((0 . "MTEXT,TEXT"))))
((lambda (i / e)
(while (setq e (ssname ss (setq i (1+ i))))
(if (entmakex (vl-remove-if
(function (lambda (x) (vl-position (car x) '(-1 102 330 360))))
(entget e)
)
)
(entdel e)
)
)
)
-1
)
)
(princ)
)
页:
[1]
2