明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1102|回复: 4

[提问] 求能获取到跟style命令一样的文字样式所使用的字体名称

[复制链接]
发表于 2020-8-9 17:17:43 | 显示全部楼层 |阅读模式
1、(setq D (tblnext "style" (null D))) 这个语句不能获取到windows宋体、楷体等系统字体名称,都为空,请教怎样才能获得;
2、如果能获取到一样的中文字体,比如下图中的”华文楷体“,但实际windows\fonts 下的字体文件名却是这个英文名称,怎么再用windows里显示的中文名称去替换字体呢。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2020-8-10 12:07:11 | 显示全部楼层



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2020-8-10 17:47:13 | 显示全部楼层
不明白哟,能不能再完整点呢,运行这句返回:参数类型错误: VLA-OBJECT nil

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2020-8-10 23:54:19 | 显示全部楼层
发表于 2020-9-25 16:23:11 | 显示全部楼层
本帖最后由 wkq004 于 2020-9-25 16:26 编辑

  1. (setq textStyleName "中等线体") ;_字体样式名
  2. (setq fontFileName "方正中等线简体.ttf") ;_字体文件名
  3. (entmake (append
  4.    '((0 . "STYLE") (100 . "AcDbSymbolTableRecord") (100 . "AcDbTextStyleTableRecord"))
  5.    (list (cons 2  textStyleName))
  6.    '((70 . 0) (40 . 1) (41 . 1))
  7.   (list (cons 3 (strcat (getenv "Windir") "\\fonts\\" fontFileName) )) ;(3 . "宋体.ttf")
  8. )
  9. )         
  10. ;;命令: (tblsearch "style" "中等线体")  ; ;返回不了除"宋体"外的汉字字体名
  11. ;;((0 . "STYLE") (2 . "中等线体") (70 . 0) (40 . 0.0) (41 . 1.0) (50 . 0.0) (71 . 0) (42 . 2.5) (3 . "") (4 . ""))
  12. ;;(vla-get-FontFile (vla-get-ActiveTextStyle (vla-get-ActiveDocument (vlax-get-acad-object))))  ;返回不了除"宋体"外的汉字字体名
  13. ;;(setvar "TEXTSTYLE" textStyleName) ;_当前字体样式
  14. ;;(setq styleObj (vla-get-ActiveTextStyle (vla-get-ActiveDocument (vlax-get-acad-object))))

  15. (setq styleObj (vlax-ename->vla-object (tblobjname "style" textStyleName)))
  16. (vla-Getfont styleObj 'typeface 'bold 'italic 'charset 'pitchandfamily)
  17. (print typeface) ;_返回中文字体名

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

本版积分规则

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

GMT+8, 2025-5-17 17:16 , Processed in 0.177115 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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