Pietari 发表于 2022-7-6 06:41:39

生成文本时出现问题

我的entmaking文本代码:
 

(setq nt (entmakex (list
   '(0 . "TEXT")
   '(100 . "AcDbEntity")
   '(67 . 0)
   '(100 . "AcDbText")
   (cons 10 c)
   (cons 11 c)
   (cons 40 v)
    '(1 . "text1 text2")
   '(50 . 0.0)
   '(62 . 161)
   '(41 . 1.0)
   '(51 . 0.0)
   '(71 . 0)
   '(72 . 0)
   '(73 . 1)
)))

 
红色部分,我希望它是字符串和如下变量的组合:
'(1 . (strcat "Text1 " var " Text2")); var = "abc"
 
它显然不起作用。。。
 
即使这样也不行:
'(1 . (strcat "Text1 " " Text2"))
 
错误是:
 


bad DXF group: (1 STRCAT "Text1" " Text2")

 
有什么想法吗?谢谢

fixo 发表于 2022-7-6 07:02:36

嗨Pietari
试试这个:

(setq p (getpoint "\Pick: "))

(entmake
       (list
       '(0 . "TEXT")
       '(100 . "AcDbEntity")
       '(100 . "AcDbText")      
       (cons 1 "tex1 text2");string
       (cons 7 "Standard");style
       (cons 8 "0");layer
'(62 . 256);color
       (cons 10 p);insertion point
       (cons 11 p);alignment point
       (cons 40 2.5);text height
(cons 41 1.0);text width
(cons 50 0.0);1.5708 - vertical, 0.0 - horizontal
(cons 51 0.0);oblique angle
'(72 . 1)));bottom center

GP_ 发表于 2022-7-6 07:13:16

尝试
 
(cons 1(strcat“Text1”var“Text2”))

Pietari 发表于 2022-7-6 07:41:26

嗨,菲索,
 
好久不见:-)
 
GP_的代码确实解决了我的问题,我必须更好地查找CONS!
谢谢你们!

Lee Mac 发表于 2022-7-6 07:45:34

以下解释可能有助于您理解Pietari:
 
http://www.cadtutor.net/forum/showthread.php?75708&p=513602&viewfull=1#post513602
页: [1]
查看完整版本: 生成文本时出现问题