明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1028|回复: 0

怎么修改实现不用选择而自动吧字体变换

[复制链接]
明经网友  发表于 2009-10-5 17:47:00 |阅读模式

怎么修改实现不用选择而自动吧字体变换

(defun C:ets(/ s1 ename ti% p11 p10 f en p11n p10n fn fn1)
    (princ "ET-Supper Made by LeaLeung.\n") ;超级ET程式制造者:黎亮!
    (princ "Select Text to change:\n")
    (setq
        s1
        (ssget '((0 . "TEXT")))  ;构造针对TEXT的选择集
    )

    (setq ti% 0)
    (if (/= s1 nil)
     (progn
       (while
        (<=
                ti%
                (- (sslength s1) 1)
        )
        (setq ename(ssname s1 ti%))
        (setq p11 nil)   ;将p11置空
        (setq e (entget ename))  ;取实体表e
        (setq p11 (assoc  11 e)) ;取对齐点
             (setq p10 (assoc 10 e)) ;取其始点表
             (setq f (assoc 10 e)) ;如上
             (setq en e)
             (if (= (cdr f) 0) (setq p11n (cons 11 (cdr p10))))

             (if (/= (cdr f ) 0)
               (progn
                 (setq p10n (cons 10 (cdr p11)));将对齐点位构成其始点表赋给p10n
                 (setq en (subst p10n p10 en)) ;用新的其始点位更换旧的其始 点表
               )
              )
              (setq fn 0)
              (setq fn (cons 72 fn))  ;(72 . 0) 为左齐
              (setq fn1 (assoc 72 en))  ;取旧的对齐方式
              (setq e (subst fn fn1 e))  ;更换旧的对齐方式为左齐
              (entmod e)
              (setq ti%(+ 1 ti%))
         )  ;end while
      ) ;endprogn s1/=nil
    )  ;endif  s1 /= nil
    (setq s1 nil)
    (princ "Made by LeaLeung") ;LeaLeung 就是我 黎亮!
)


(defun C:et(/ s1 ename ti% p11 p10 f en p11n p10n fn fn1)
    (princ "Select Text to change:\n")
    (setq
        s1
        (ssget '((0 . "TEXT")))  ;构造针对TEXT的选择集
    )

    (setq ti% 0)
    (if (/= s1 nil)
     (progn
       (while
        (<=
                ti%
                (- (sslength s1) 1)
        )
        (setq ename(ssname s1 ti%))
        (setq p11 nil)   ;将p11置空
        (setq e (entget ename))  ;取实体表e
        (setq p11 (assoc  11 e)) ;取对齐点
             (setq p10 (assoc 10 e)) ;取其始点表
             (setq f (assoc 10 e)) ;如上
             (setq en e)
             (if (= (cdr f) 0) (setq p11n (cons 11 (cdr p10))))

             (if (/= (cdr f ) 0)
               (progn
                 (setq p10n (cons 10 (cdr p11)));将对齐点位构成其始点表赋给p10n
                 (setq en (subst p10n p10 en)) ;用新的其始点位更换旧的其始 点表
               )
              )
              (setq fn 0)
              (setq fn (cons 72 fn))  ;(72 . 0) 为左齐
              (setq fn1 (assoc 72 en))  ;取旧的对齐方式
              (setq e (subst fn fn1 e))  ;更换旧的对齐方式为左齐
              (entmod e)
              (setq ti%(+ 1 ti%))
         )  ;end while
      ) ;endprogn s1/=nil
    )  ;endif  s1 /= nil
    (setq s1 nil)
)

回复

使用道具

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

本版积分规则

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

GMT+8, 2024-10-1 15:26 , Processed in 0.155497 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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