文字以左中或右中吸附到直线,多线,弧的端点,排版利器
因为对box的使用不熟悉,所以只能做到居中吸附,而且涉及到文字宽度,以后会考虑MTEXT的 - (defun C:edt ()
- ;; (princ "\nSelect ")
- (while (setq objEnt (entsel "\n Select a point on a line/pline/arc... "))
- (progn
- (setq objType (cdr (assoc 0 (entget (car objEnt)))))
- (princ objType)
- (setq pt1 (osnap (cadr objEnt) "_nea"))
- (setq pt2 (osnap (cadr objEnt) "_endp"))
- (setq ent2 (entget (setq entList (car objEnt))))
- (setq layName (DXF 8 ent2))
- (setvar "clayer" layName)
- )
- )
- ;; (princ "\nselect the text")
- (princ)
- (setq NN (entsel "\nSelect the text to move to the ENDPOINT: ")
- NN1 (entget (car NN))
- NN2 (subst (cons 72 4) (assoc 72 NN1) NN1);;1中心2右3对齐4中央5调整6左7
- ST1 (subst (cons 11 PT2) (assoc 11 NN2) NN2))
- (entmod NN2)
- (entmod ST1)
- (setvar "cmdecho" 0)
- )
|