qazxswk 发表于 2024-10-9 10:16:28

如何用LISP修改现有的多重引线文字颜色?

如题,如何用LISP修改现有的多重引线文字颜色?不是新建。找了很久没有找到相关变量。网上也都是新建的相关资料。



wzg356 发表于 2024-10-9 10:16:29

本帖最后由 wzg356 于 2024-10-9 16:22 编辑

改多行文字

(and
      (setq e(Car(Entsel)))
      (setq e(Vlax-Ename->Vla-Object e))
      (wcmatch (Vlax-Get e 'ObjectName) "AcDbMLeader")
      (setq str(Vlax-Get e 'TextString))
      ;如str修改过颜色,则先消除多行文字原格式,自己搜函数
      (setq str(strcat"{\\C" "3" ";" str"}"));改为3号色
      (Vlax-put e 'TextString str)
      
)
另一个方法比较好的http://bbs.mjtd.com/forum.php?mo ... %D1%F9%CA%BD&page=2
即修改样式:固定箭头颜色,文字颜色随实体可用 (Vlax-Get obj 'color 色号)修改

kozmosovia 发表于 2024-10-9 10:45:28

本帖最后由 kozmosovia 于 2024-10-9 10:47 编辑

MLeaderStyle有TextColor可以改
https://help.autodesk.com/view/O ... 9-982D-9112539F8DE8

如果已有的改不掉,可以自己给已有的内容添加MTEXT的颜色修饰符指定颜色

qazxswk 发表于 2024-10-9 10:51:46

kozmosovia 发表于 2024-10-9 10:45
MLeaderStyle有TextColor可以改
https://help.autodesk.com/view/O ... 9-982D-9112539F8DE8



MLeaderStyle没有透明命令吧。

kozmosovia 发表于 2024-10-9 11:07:00

你要lisp改,直接COM改就是了,跟透明不透明命令有啥关系?

天天问 发表于 2024-10-12 19:51:17

曾经也受到这个问题的困扰,写过一个代码,自己凑活用的。供参考。
页: [1]
查看完整版本: 如何用LISP修改现有的多重引线文字颜色?