帮助修改文字宽度Lisp?
哎呀标题应为“帮助修改文字宽度Lisp”我不知道这个代码是从哪里来的
(很老了……)
谁能帮我修改一下吗
还要处理多行文字和维度吗?
-编辑7.29.2010
**经过一些研究后,请点击多行文字不值得这么麻烦**
我只需要它处理各种维度。
关联、多重引线等。
(DEFUN C:TW (/ P OPTION NSTYLE NWIDTH L N E)
(PROMPT "\nChanges text width: ")
(setvar "cmdecho" 0)
(graphscr)
(command "undo" "m")
(Prompt "\nSelect text to be changed: ")
(setq olderr *error*
*error* cterr)
(setq p (ssget))
(SETQ OPTION "Width")
(cond
((eq option "Width")
(setq nwidth (getreal "\nEnter new width for text: "))))
(if p
(progn
(setq l 0 n (sslength p))
(while (< l n)
(if (= "TEXT"
(cdr (assoc 0 (setq e (entget (ssname p l))))))
(progn
(cond
((eq option "Width")
(setq e (subst (cons 41 nwidth) (assoc 41 e) e))))
(entmod e)))
(setq l (1+ l)))))
(princ))
虽然我想知道如何修改此代码,
如果有其他更适合改变的常规
任何“文本相关”实体的文本宽度
也向这样的人开放。。。
谢谢 你好
以下内容与您的相同;
(DEFUN C:TW (/ p nwidth l n e)
(PROMPT "\nChanges text width: ")
(setq p (ssget '((0 . "TEXT"))))
(setq nwidth (getint "\nEnter new width for text: "))
(if (/= p nil)
(progn
(setq l 0
n (sslength p))
(while (< l n)
(setq e (entget (ssname p l)))
(entmod (setq e(subst (cons 41 nwidth) (assoc 41 e) e))
)
(setq l (1+ l))))
)
(princ)
)
因此,多行文字中的(assoc 41)与文字不同。有关更多信息,请查看DXF。
塔瓦特 谢谢,但这不是我要问的。
如果我能自己写代码,我就不会在这里问。。。
我尽量避免直接向这里的诸神寻求帮助。。
不过还是谢谢你。。
:lol:
我不知道你为什么生气,实际上你应该更有耐心才能获得更多信息。
我确信这里没有神,只有人类存在。
如果你不寻求帮助,那意味着你也不会帮助任何一个确定的人。
因此,如果你不想感谢任何人,你不必感谢任何人。甜心。
谢谢你,如果可以的话,我会毫不犹豫地帮助你。请确定。
我的问候
塔瓦特
你有确凿的证据来支持你的陈述吗? 我对你的问题甚至你的声明没有任何评论。。。。。。。。
我很高兴成为一个正常人。。。。。。。 哦,我想不是每个人都像我一样喜欢怀疑论。
正常是一个相对项:眨眼: 你打败了我。 “正常”特别是谦逊的D
那是我。
页:
[1]
2