批量修改字体至仿宋体和单线体的程序

Jiangzl 发表于 2009-2-10 15:18:43 | 显示全部楼层 | 阅读模式
;改变当前图形中的所有文字样式的字体以为"仿宋_GB2312"或者单线体
(defun c:chTextsy(/ AcadObject AcadDocument TextColl num i SItem sname)
  (setvar "cmdecho" 0)
  (VL-LOAD-COM)
  (initget "A S");定义关键字
  (setq c(getkword "\n选择文字类型:仿宋体(A)单线体(S)<S>:"))
  (if(= c nil)
    (setq c "S")
    )
  (setq AcadObject(vlax-get-acad-object)
        AcadDocument(vla-get-ActiveDocument Acadobject)
        TextColl(vla-get-TextStyles AcadDocument)
)
  (setq num(vla-get-Count TextColl))
  (setq i 0)
  (While (<= i (- num 1))
         (setq SItem(vla-Item TextColl i))
         (setq sname(vla-get-Name SItem))
       (cond
  ((= c "A")
         (Command "_style" sname "仿宋_GB2312" "" 0.71 "" "N" "N"))
         ((= c "S")
         (CH_TXTSTYLE sname "fst.shx" "hztxt.shx")))
         ;;(Command "_style" sname "仿宋_GB2312" "" 0.71 "" "N" "N");;;(CH_TXTSTYLE TextStyleName FontName BigFontName)
         (setq i(+ i 1))
   
         )
  (Princ "\n共有:")(princ i)(princ "种文字样式被改变!")
  (princ)
)
精彩评论倒序浏览

4868查看1评论

smxalsen 发表于 2009-11-2 15:59:57
晕,这么专业,有没有可以直接加载的东西
举报 回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

 
 
  • QQ:56984982
  • 点击这里给我发消息
    电话:13527553862
    站务咨询群桥头堡站务咨询桥梁专业交流群:
    中国桥梁专业领袖群
    工作时间
    8:00-18:00