选择红色多行文字和纹理
大家好。。谁能告诉我,如何通过lisp从模型空间中选择所有红色文本和多行文字。提前谢谢。 (sssetfirst nil (ssget "_x" '((0 . "TEXT,MTEXT") (62 . 1)))) (setq ss (ssget "X" '((0 . "text,mtext")(62 . 1)))) 或
(setq ss (ssget "X" (list (cons 0 "TEXT,MTEXT")(cons 62 1)))) 大家好,
谢谢你的快速回复。。需要更多帮助。。如何将选定文字和多行文字更改为粗体。 快速搜索。从李大师那里找到了一些东西。希望有帮助。
嗨,特梅拉康,
谢谢你的努力。。我试过这个。。但在这段代码中,我们必须手动选择对象。。我需要选择所有红色文字和多行文字,并更改为粗体。
你能修改lisp吗。 在这里搜索修改多行文字有一些很好的编码示例,甚至可以找到一个红色的单词并改变其颜色等。编码使用直接修改多行文字中的隐藏代码。粗体是可以添加的项目。
标题
TextString=“{\\fArial | b0 | i0 | c0 | p34;HE\\fArial | b1 | i0 | c0 | p34;ADI\\fArial | b0 | i0 | c0 | p34;NG}” 我唯一找到并编辑了一点的就是这个。我会坚持下去。我只是想选择所有的红色,多行文字,文字,但在VL。
(defun c:mtval( / ent objmtext stroldval strnewval)
(setq ent (car (entsel))
objMText (vlax-ename->vla-object ent)
strOldval (vlax-get-property objMText "TEXTSTRING")
strnewval (STRCAT "{\\fArial|b1|i0|c0|p34;" stroldval)
)
(if strnewval (vlax-put-property objmtext "TEXTSTRING" strnewval)
)
(vlax-release-object objmtext)
) 添加这些硬编码值时要小心。。如果不检查是否存在:{\\fArial | b1 | i0 | c0 | p34;{\\fArial | b1 | i0 | c0 | p34;{\\fArial | b1 | i0 | c0 | p34;{\\fArial | b1 | i0 | c0 | p34;asdfsafsdfsfsaff“
也许可以这样使用:
(strcat "{\\fArial|b1|i0|c0|p34;"
(vl-string-left-trim
"{\\fArial|b1|i0|c0|p34;"
(vlax-get-property objmtext "TEXTSTRING")
)
)
页:
[1]
2