找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1525|回复: 18

[每日一码] 将TEXT,MTEXT对齐方式修改为窗口的正中

[复制链接]

已领礼包: 19个

财富等级: 恭喜发财

发表于 2017-7-31 10:14:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
  1. (defun c:tt (/ e ll ur c n)
  2.   (if
  3.     (and
  4.       (progn
  5.         (while
  6.           (and
  7.             (setq e (car (entsel "\nSelect Text or MText: ")))
  8.             (not (wcmatch (cdr (assoc 0 (setq l (entget e)))) "*TEXT"))
  9.           )
  10.            (princ "\n** Object must be Text or MText **")
  11.         )
  12.         e
  13.       )
  14.       (setq ll (getpoint "\nPick Lower-Left Corner: "))
  15.       (setq ur (getpoint "\nPick Upper-Right Corner: " ll))
  16.       (setq c (polar ll (angle ll ur) (/ (distance ll ur) 2.)))
  17.       (setq n (trans '(0. 0. 1.) 1 0 t))
  18.     )
  19.      (entupd
  20.        (cdr
  21.          (assoc        -1
  22.                 (entmod        (if (eq "MTEXT" (cdr (assoc 0 l)))
  23.                           (SubstDXF 10 (trans c 1 0) (SubstDXF 71 5 l))
  24.                           (SubstDXF 11
  25.                                     (trans c 1 n)
  26.                                     (SubstDXF 72 1 (SubstDXF 73 2 l))
  27.                           )
  28.                         )
  29.                 )
  30.          )
  31.        )
  32.      )
  33.   )
  34.   (princ)
  35. )


SubstDXF        :

游客,如果您要查看本帖隐藏内容请回复


评分

参与人数 1D豆 +5 收起 理由
sh_h + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 19个

财富等级: 恭喜发财

 楼主| 发表于 2017-7-31 10:17:09 | 显示全部楼层
本帖最后由 Lisphk 于 2017-7-31 10:19 编辑

另外一个同功能的,用VLISP实现的。

  1. (defun c:InRec (/ obj ptA ptB ptBase ptBL ptTR)
  2.   (vl-load-com)
  3.   (if (and (setq obj (car (entsel "\nSelect (text) object to move: ")))
  4.            (setq obj (vlax-ename->vla-object obj))
  5.            (setq ptA (getpoint "\nFirst corner of rectangle: "))
  6.            (setq ptB (getpoint ptA "\nSecond corner of rectangle: "))
  7.       )
  8.     (progn (cond ((vlax-property-available-p obj 'attachmentpoint)
  9.                                         ; AcDbMText
  10.                   (vlax-put obj 'attachmentpoint 5) ; 5 = middle center
  11.                   (setq ptBase (vlax-get obj 'insertionpoint))
  12.                  )
  13.                  ((vlax-property-available-p obj 'alignment) ; AcDbText
  14.                   (vlax-put obj 'alignment 10)
  15.                                         ; 10 = middle center; 4 = middle
  16.                   (setq ptBase (vlax-get obj 'textalignmentpoint))
  17.                  )
  18.                  ('T
  19.                   (vla-getboundingbox obj 'ptBL 'ptTR)
  20.                   (setq        ptBase (kg:MidPoint
  21.                                  (vlax-safearray->list ptBL)
  22.                                  (vlax-safearray->list ptTR)
  23.                                )
  24.                   )
  25.                  )
  26.            )
  27.            (vlax-invoke
  28.              obj
  29.              'move
  30.              ptBase
  31.              (trans (kg:MidPoint ptA ptB) 1 0)
  32.            )
  33.     )
  34.   )
  35. )

  36. (defun kg:MidPoint (pt1 pt2)
  37.   (mapcar '(lambda (a b) (/ (+ a b) 2.0)) pt1 pt2)
  38. )

  39. (princ "\nUsage: InRec ")
  40. (princ)


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2017-7-31 10:28:55 | 显示全部楼层
多行文本用得少..改成居中什么样??
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2017-7-31 10:46:46 | 显示全部楼层
kkkkkkkkkkkkkkkkkkkkkkkkkkkkk
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 8727个

财富等级: 富甲天下

发表于 2017-7-31 11:22:21 | 显示全部楼层
谢谢分享学习!!!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 769个

财富等级: 财运亨通

发表于 2017-7-31 11:30:07 | 显示全部楼层
谢谢楼主分享!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 75个

财富等级: 招财进宝

发表于 2017-7-31 12:55:01 | 显示全部楼层
位置改变不?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5584个

财富等级: 富甲天下

发表于 2017-7-31 14:03:18 | 显示全部楼层
感谢楼主的源代码!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 620个

财富等级: 财运亨通

发表于 2017-8-1 08:08:12 | 显示全部楼层
感谢楼主的源代码!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6468个

财富等级: 富甲天下

发表于 2017-8-1 10:23:27 | 显示全部楼层
回复学习。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 2963个

财富等级: 家财万贯

发表于 2017-8-1 22:36:37 | 显示全部楼层
回复学习,谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2017-8-2 11:29:50 | 显示全部楼层

回复学习。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 6056个

财富等级: 富甲天下

发表于 2017-8-4 00:11:05 | 显示全部楼层
看看隐藏的是什么。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 166个

财富等级: 日进斗金

发表于 2018-12-14 16:04:23 | 显示全部楼层
来学习一下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 158个

财富等级: 日进斗金

发表于 2018-12-18 20:22:39 来自手机 | 显示全部楼层
看看藏了什么
来自: 微社区
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-25 01:30 , Processed in 0.253013 second(s), 57 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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