可能使用“适合”文本对齐方式,将文本高度设置为矩形的高度。
作为一个非常简单的示例,请考虑:
- (defun c:tfit ( / a b e p q )
- (if
- (and
- (progn
- (while
- (progn (setvar 'errno 0) (setq e (car (entsel "\nSelect Text: ")))
- (cond
- ( (= 7 (getvar 'errno))
- (princ "\nMissed, try again.")
- )
- ( (= 'ename (type e))
- (if (/= "TEXT" (cdr (assoc 0 (entget e))))
- (princ "\nObject is not Text.")
- )
- )
- )
- )
- )
- (= 'ename (type e))
- )
- (setq e (entget e))
- (setq a (getpoint "\nSpecify first corner: "))
- (setq b (getcorner a "\nSpecify opposite corner: "))
- (setq p (mapcar 'min a b)
- q (mapcar 'max a b)
- )
- )
- (entmod
- (subst '(72 . 5) (assoc 72 e)
- (subst '(73 . 0) (assoc 73 e)
- (subst (cons 10 p) (assoc 10 e)
- (subst (list 11 (car q) (cadr p) 0.0) (assoc 11 e)
- (subst (cons 40 (- (cadr q) (cadr p))) (assoc 40 e) e)
- )
- )
- )
- )
- )
- )
- (princ)
- )
|