mien 发表于 2022-7-6 15:01:11

使用Visual basic更改文本

有人能教我如何使用Visual basic或lips在autocad中显示高度值吗?但文本格式必须如下所示,例如9.5。。。

lpseifert 发表于 2022-7-6 15:12:16

如果我理解你的要求,并假设它是多行文字。。。您需要检查两个dxf代码,即文本高度和字符串的值和格式。
(cdr(assoc 43 (entget(car(entsel)))))
(cdr(assoc 1 (entget(car(entsel)))))

Lee Mac 发表于 2022-7-6 15:19:49

也许这可以帮助您:
 
http://www.cadtutor.net/forum/showthread.php?t=33006

CarlB 发表于 2022-7-6 15:30:05

可以使用具有属性的块标记高程(高度);在您的示例中,“9”和“5”可以是单独的属性,右对齐和左对齐。

Lee Mac 发表于 2022-7-6 15:36:41

在多行文字中,可以通过将以下代码替换到elist中来改变文字的高度:
 
{\\H0.5x;文本}
 
以上内容将使文本高度为多行文字中前一个文本的一半。

Lee Mac 发表于 2022-7-6 15:43:57

例如:
 

(defun c:tht (/ ent tval nval 1st)
(if (and (setq ent (car (entsel "\nSelect MTEXT Entity... ")))
      (eq "MTEXT" (cdadr (entget ent))))
   (progn
   (setq tval (cdr (assoc 1 (entget ent)))
       nval (substr tval 2) 1st (substr tval 1 1))
   (entmod (subst (cons 1 (strcat 1st "\{\\H0.5x;" nval "\}"))
            (assoc 1 (entget ent)) (entget ent))))
   (princ "\nNo MTEXT Selected"))
(princ))

mien 发表于 2022-7-6 15:53:12

谢谢李。。。。

Lee Mac 发表于 2022-7-6 15:58:35

没有问题,还有其他问题,尽管问吧

mien 发表于 2022-7-6 16:04:03

好的,谢谢李。。。。。
页: [1]
查看完整版本: 使用Visual basic更改文本