明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 672|回复: 7

文字跑位问题

[复制链接]
发表于 2022-7-10 09:52 | 显示全部楼层 |阅读模式
10明经币
求助大佬们,论坛看到这个代码,如何能让文字到左对齐基点呢


(defun c:test(/ DATE EN N P1 SS)
  (setvar "cmdecho" 0)
  (if (setq ss (ssget "X" '((0 . "TEXT"))))
    (progn
      (setq n 0)
      (repeat (sslength ss)
        (setq en (ssname ss n) date (entget en) n (1+ n))
          (if (= (cdr (assoc 72 date)) 0)
            (progn
              (setq p1 (cdr (assoc 10 date))
                       date (subst (cons 72 2) (assoc 72 date) date)
                       date (subst (cons 11 p1) (assoc 11 date) date)
               )
             (entmod date)
            )
         )
       )
     )
   )
  (princ)
)

附件: 您需要 登录 才可以下载或查看,没有账号?注册
发表于 2022-7-10 10:02 | 显示全部楼层
(setq ob(vlax-ename->vla-object e) p0(cdr(assoc 10 (entget e))));保存插入点p0
...................;你的改变文字对正的代码
(vla-Move ob(vlax-3d-point (cdr(assoc 10 (entget e))))(vlax-3d-point p0));移到原插入点
回复

使用道具 举报

 楼主| 发表于 2022-7-10 10:10 | 显示全部楼层
wzg356 发表于 2022-7-10 10:02
(setq ob(vlax-ename->vla-object e) p0(cdr(assoc 10 (entget e))));保存插入点p0
...................; ...

大佬能帮完善一下吗
回复

使用道具 举报

发表于 2022-7-10 10:25 | 显示全部楼层
本帖最后由 wzg356 于 2022-7-10 10:44 编辑

(defun c:test( / DATE EN N P1 SS)
  (setvar "cmdecho" 0)
  (if (setq ss (ssget "X" '((0 . "TEXT"))))
    (progn
      (setq n 0)
      (repeat (sslength ss)
        (setq en (ssname ss n) date (entget en) n (1+ n))
        (setq p0(cdr(assoc 10 date)) date72(assoc 72 date))
          (if (= (cdr date72) 0)
            (entmod (subst (cons 72 2) date72 date))
         );直接修改对正----72/73码
      ;改变对正,插入点改变了,  但是用entmod变不回来的
         (setq ob(vlax-ename->vla-object en))
         (vla-Move ob(vlax-3d-point (cdr(assoc 10 (entget en))))(vlax-3d-point p0))
         ;移动回原来插入点
       )
     )
   )
  (princ)
)




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

 楼主| 发表于 2022-7-11 13:24 | 显示全部楼层
wzg356 发表于 2022-7-10 10:25
(defun c:test( / DATE EN N P1 SS)
  (setvar "cmdecho" 0)
  (if (setq ss (ssget "X" '((0 . "TEXT")) ...

entmod,用什么方法呢,来个完整代码吧
回复

使用道具 举报

发表于 2022-7-12 17:15 | 显示全部楼层
广易精通 发表于 2022-7-11 13:24
entmod,用什么方法呢,来个完整代码吧

没见注?在哪儿单用entmod变不回来

用移动不行?
回复

使用道具 举报

发表于 2022-9-2 16:33 | 显示全部楼层
直接用cad自带命令不就可以嘛,justifytext
回复

使用道具 举报

 楼主| 发表于 2022-9-2 21:37 | 显示全部楼层
ssyfeng 发表于 2022-9-2 16:33
直接用cad自带命令不就可以嘛,justifytext

那样文字只在原位啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-28 05:29 , Processed in 0.162436 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表