如何修正CAD快速看图中错乱的字体
如何将CAD中的所有TTF字体修改为SHX字体,使用lisp程序
ChatGPT:
要将CAD中的所有TTF字体修改为SHX字体,可以使用以下的LISP程序示例:
lispCopy code(defun change-ttf-to-shx ()
(setq ttf-font "Your_TTF_Font_Name") ; 替换为你要修改的TTF字体名称
(setq shx-font "Your_SHX_Font_Name") ; 替换为你要替换成的SHX字体名称
(vl-load-com)
(foreach obj (vla-get-Activedocument (vlax-get-acad-object))
(if (and (vlax-property-available-p obj 'ObjectName)
(equal (vla-get-ObjectName obj) "AcDbText"))
(progn
(setq font-name (vla-get-FontName obj))
(if (and font-name (equal (strcase font-name) (strcase ttf-font)))
(vla-put-FontName obj shx-font))
)
)
)
(princ "TTF fonts changed to SHX fonts successfully!")
)
(change-ttf-to-shx)
在上述的LISP程序中,你需要进行以下替换:
- 将
Your_TTF_Font_Name
替换为你想要修改的TTF字体的名称。 - 将
Your_SHX_Font_Name
替换为你希望替换成的SHX字体的名称。
将上述程序复制到CAD的命令行或者LISP编辑器中运行,它会遍历当前活动文档中的所有文本对象,将指定的TTF字体修改为指定的SHX字体。成功执行后,你将收到一条消息确认TTF字体已成功修改为SHX字体。
请确保在运行此程序之前先备份你的CAD文件,以防意外发生。另外,根据具体情况和CAD版本,可能需要对程序进行适当的调整。
如果手工处理也可以。AUTOCAD中explode后点击文字,右键-选择类似对象,再右键-特性,样式-改为standard,再另存文件为2013版本。
如果使用快速看图,可以在布局里点右键-布局转换成模型,再另存文件,再打开即可。