【本文章为南方数码生态圈原创文章:南方数码虎妞,受知识产权保护,如转发请在文章开头注明来源“南方数码生态圈”】
——————————
有个小伙伴在生态圈私信我求助,说他的CASS出现很奇怪的问题:
CASS刚启动的时候,所有功能正常,用个几分钟出现了鼠标悬停提示乱码的现象。
问我怎么设置这个悬停提示。
呃!其实这个提示的字体是默认的,还没法设置!
拿到实例图形后,我找到了原因和解决方法。
乱码提示截图
正常提示截图
——————————
■ 发现问题 ■
提示的文字出现乱码,就先检查一下字体。拿到实例数据之后,在命令行输入style,回车后在下图的对话框中,发现了一个字体“左倾宋体”,这个字体对应的字体名“SimSun-ExtB”,是一个自定义的字体。
这个字体是用命令创建的,宽度因子0.8的左倾宋体引用simsunb.ttf,定义语句如下:
(这么高阶的玩法,我也是头次遇到,学无止境啊!)
;(setvar 'userr1 500)
(setvar "cmdecho" 0)
(if (= zipanduan nil)
(progn
(command "-style" "STANDARD" "simsunb.ttf" 0 0.8 0 "n" "n")
(setq zipanduan t)
)
)
(setq chklay (tblsearch "layer" "JMKC-外边线"))
(if (= chklay nil)
(c:jmm)
)
(command "layer" "T" "JMKC-外边线" "ON" "JMKC-外边线" "")
(command "_clayer" "JMKC-外边线")
(c:X)
(princ)
)
————————
■ 解决方法(一) ■
既然是字体出了问题,那么重新定义字体,我不会用命令定义字体,就用了自己的土办法:命令行输入style,按下图步骤重新定义了一个左斜宋体。
以下两个图的操作步骤,都可以解决哈。
有兴趣自己都动手试试,我亲自验证过了!
操作方法一
操作方法二
————————
■ 解决方法(二) ■
在反复测试中发现win10的simsun.ttc包括宋体和新宋体,不识别simsunb.ttf,但win7的话就没问题。那么在win10中重新定义字体。
定义语句如下:
;(setvar 'userr1 500)
(setvar "cmdecho" 0)
(if (= (Tblsearch "style" "宋体") nil)
(progn
(vl-load-com)
(setq ThisDrawing (vla-get-activedocument (vlax-get-acad-object)))
(Setq TextStyles (vla-get-TextStyles ThisDrawing))
(Setq TextStyle (vla-add TextStyles "宋体"))
(vla-SetFont TextStyle "宋体" :vlax-false :vlax-false 1 0)
)
)
(command "-style" "STANDARD" "宋体" 0 0.8 0 "n" "n")
(makelay "JMKC-外边线" 30 )
(c:X)
(princ)
)
————————
这个问题不常见,但遇到的人往往不知所措,各种baidu也没有解决方法。
Win10系统中,识别CAD字体问题比较多。
以前的文章里也有介绍,大家遇到字体乱码,不显示等问题,优先考虑用style命令,重新指定。
PS:如果你还遇到了类似的诡异问题,可在南方数码生态圈发帖提问,或者加入QQ社群(897741522)给我们留言吧!
全部评论