马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 st788796 于 2019-1-19 11:26 编辑
Signature RetVal = object.SetFont(Typeface, Bold, Italic, CharSet, PitchAndFamily)
其中 Typeface 即字体名,中文系统中常用有 “宋体”、“黑体”等等,这些名称是 “本地名”,通用的是 英文名,就如 PDF 中的嵌入字体,如果你说“宋体”,在其他语言系统下就可能不认识了,这个英文名称是保存在 TTF TTC 字体文件的头字节中,在注册表中也是有对应记录的,在
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts
这个键值下可以看到,后面的数据是字体文件名,第一个名称就是这个字体的英文名称,比如设置宋体样式

- (setq tss (vla-get-textstyles (vla-get-activedocuments (vlax-get-acad-object))))
- (setq ts (vla-add tss "xtest"))
- (vla-setfont ts "宋体" :vlax-fasle :vlax-false 1 0)
最后一句换成
- (vla-setfont tss "SimSun" :vlax-false :vlax-false 1 0)
复制代码
在注册表中 SimSun & NSimSun (TrueType) 后面 对应的是 simsun.ttc,其中 SimSun 是字体名(注意大小写!!!)
效果是一样的,这里 SimSun 就是 宋体 的英文名,在注册表的名称中可以看到一个文件名可能对应着几个名称,这是因为 TTF 中可以设置很多参数(比如加粗、旋转等等)就成为一个“新字体”,每个字体的基本名称大家对比一下就知道了
|