怎样批量修改多个CAD图中的文字样式

2025-02-10 10:58:06
推荐回答(4个)
回答1:

(defun GetFolder (msg / WinShell shFolder path catchit);选取文件夹
(vl-load-com)
(setq shFolder (vlax-invoke-method (vlax-create-object "Shell.Application")'BrowseForFolder 0 msg 1))
(setq catchit (vl-catch-all-apply'(lambda ()
(setq shFolder (vlax-get-property shFolder 'self))
(setq path (vlax-get-property shFolder 'path)))))
(if (vl-catch-all-error-p catchit) nil path)
)

(defun c:MODSTYLE()
(command "_STYLE" "HZ" "SimSunb.ttf" "0" "1" "" "" "")
(setq Path (Getfolder "选择图形文件所在文件夹"))
(vl-mkdir (strcat path "-修改")) (setvar"CMDECHO"0)
(setq fns (vl-directory-files path "*.dwg" 1))
(foreach fn fns
(command "INSERT" (strcat "*" path "\\" fn) (list 0 0 0) "1" "0")
(command "ZOOM" "E")
(command"PURGE""A""*""N")
(command"SAVEAS" ""(strcat path"-修改\\" fn))
(command"erase"(ssget"X")"")(gc)(gc))
(setvar"CMDECHO"1)(command"QUIT""Y")
)

命令行MODSTYLE,宋体字体文件名只能是SimSunb.ttf

回答2:

如果200多幅图纸是分开200多个DWG文件的话,只能一张张的改变了!没有捷径。

回答3:

如果你的新字体扩展名和原字体扩展名一样,删除你的原字体文件,把新字体换在原字体名文件试一试。

回答4:

那没办法,只能一个个来咯!