(apply '(lambda (/ cmdecho data done edata i l1 len poe pos ssdata str1 str2 stylst) (setq cmdecho (getvar "cmdecho")) (setvar "cmdecho" 0) (setq stylst nil) (if (setq ssdata (ssget "x" (list (cons 0 "MTEXT")))) (progn (setq i 0) (princ "\n移除多文行字字型.....") (defun string-search (str1 str2 / done i len) (setq len (strlen str1) i 1 done nil ) (while (null done) (if (= (substr str2 i len) str1) (setq done T) (progn (setq i (1+ i)) (if (> i (- (1+ (strlen str2)) len)) (setq i nil done T ) ) ) ) ) i ) (repeat (sslength ssdata) (setq edata (entget (ssname ssdata i)) i (1+ i) data (cdr (assoc 1 edata)) l1 nil ) (while (or (setq pos (string-search "\\f" data)) (setq pos (string-search "\\F" data)) ) (setq poe (string-search ";" (substr data pos)) data (strcat (substr data 1 (1- pos)) (substr data (+ pos poe))) l1 T ) ) (if l1 (progn (entmod (subst (cons 1 data) (assoc 1 edata) edata ) ) (setq data (cdr (assoc 7 edata))) (if (null (member data stylst)) (setq stylst (cons data stylst)) ) ) ) ) (setq l1 nil) (while stylst (setvar "regenmode" 0) (setq data (car stylst) stylst (cdr stylst) edata (entget (tblobjname "style" data)) l1 T ) (command "-style" data "新細明體" "" "" "" "" "") ) (if l1 (progn (setvar "regenmode" 1) ) ) ) ) (setvar "cmdecho" cmdecho) (princ) ) nil )