乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 35|回复: 1

请问 如何得到当前打开的图形中的所有字体名,以及它是否使用大字体的信息

[复制链接]

26

主题

50

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
154
发表于 2003-5-14 11:43:00 | 显示全部楼层 |阅读模式
我是想这样,别人拿来的图,很多字体我没有,我想用LISP得到有哪些字样式是普通(如XX宋体)我用宋体替代. 哪些是单线字,我用HZTXT等代替。 这样,既替换了字体,又没有太大的改变文字大小位置关系等。
回复

使用道具 举报

29

主题

1152

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1268
发表于 2003-5-15 14:58:00 | 显示全部楼层
;;(TABLE "STYLE")
(defun TABLE (S / NAME ENT D R)
  (while (setq D (tblnext S (null D)))
    (setq NAME (cdr (assoc 2 D)))
    (setq ENT (entget (tblobjname "STYLE" NAME)))
    (setq
      R        (cons (list NAME (cdr (assoc 3 ENT)) (cdr (assoc 4 ENT))) R)
    )
  )
)
;;只对改动指定的文字样式
(defun CH_TXTSTYLE (TextStyleName FontName BigFontName / TxtStyle Doc)
  (setq TxtStyle (vla-Item
                   (vla-get-textstyles
                     (setq Doc (vla-get-activedocument
                                 (vlax-get-acad-object)
                               )
                     )
                   )
                   TextStyleName
                 )
  )
  (if (= (strcase (substr FontName (- (strlen FontName) 3) 4))
         ".TTF"
      )
    (vla-put-fontfile
      TxtStyle
      (strcat (getenv "Windir") "\\fonts\\" FontName)
    )
    (progn
      (vla-put-fontfile TxtStyle FontName)
      (vla-put-bigfontfile TxtStyle BigFontName)
    )
  )
  (vla-regen Doc acallviewports)
  (vlax-release-object Doc)
  (vlax-release-object TxtStyle)
  (princ)
)
;;示例:将文字样式设为TTF字体-宋体
;;(CH_TXTSTYLE "STANDARD" "SIMSUN.TTF" "")
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-6-8 05:24 , Processed in 0.507763 second(s), 56 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表