明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1387|回复: 3

[已解答] 请问如何将文字样式修改程序

[复制链接]
发表于 2014-9-19 12:26:49 | 显示全部楼层 |阅读模式
把CAD文档中的文字样式"mychina"转换成"standard"的程序,请大家指教,如何编写程序?
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2014-9-19 13:43:59 | 显示全部楼层
更新组码7.
发表于 2014-9-19 14:09:11 | 显示全部楼层
  1. (defun c:tt()
  2.   (setq ss (ssget))
  3.   (setq        ssn (sslength ss))
  4.   (setq n 0)
  5.   (repeat ssn
  6.     (setq en(ssname ss n))
  7.     (setq ob (vlax-ename->vla-object en))
  8.     (vla-put-StyleName ob "standard")
  9.     (setq n (1+ n))
  10.     )
  11.   (print (strcat "共更新" (rtos ssn 2 0) "个对象"))
  12.   (princ)
  13.   )
发表于 2014-9-19 18:51:15 | 显示全部楼层
;修改文字的字体     
(defun *error*(st)
  (princ (strcat "错误: " st))
  (princ)
)
(defun C:xgzt(/ test ss len n en1 a oldr newr ent nn)
  (setvar "CMDECHO" 0)
  (setq test T nn 0)
  (while test
    (setq ss (ssadd))
    (setq ss (ssget))
    (if (= nil ss)
      (setq test nil)
      (progn
        (setq len (sslength ss))
        (setq n 1 s 1)
        (while (<= n len)
          (setq en1 (ssname ss (1- n)))
          (setq a (entget en1))
          (if  (= "TEXT" (cdr (assoc 0 a)))
            (progn
              (if (= s 1)
                (progn
                  (setq oldr (cdr (assoc 7 a)))
                  (setq newr (strcase (getstring (strcat "\n新字体 <" oldr ">:"))))
                  (if (= newr "") (setq newr oldr))
                  (setq s nil)
                )
              )
              (if (= (tblsearch "style" newr) nil)
                (progn
                  (cond ((= newr "XW")
                          (command "STYLE" "xw" "txt" "0" ".8" "0" "n" "n" "n"))
                        ((= newr "HZ")
                          (command "STYLE" "hz" "txt,hztxt" "0" ".8" "0" "n" "n" "n"))
                        ((= newr "CHINA")
                          (command "STYLE" "china" "txt,china" "0" ".8" "0" "n" "n" "n"))
                        ((= newr "LM")
                          (command "STYLE" "lm" "complex" "0" ".8" "0" "n" "n" "n"))
                        (T (princ (strcat "\nPlease define style " newr " use STYLE command !")))
                  )
                )
              )
              (setq ent (subst (cons 7 newr) (assoc 7 a) a))
              (entmod ent)
              (setq nn (1+ nn))
            )
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-19 22:44 , Processed in 0.227894 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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