비밀번호를 잊으셨나요?

비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.

계정이 있나요? 로그인

You must login to ask a question.

비밀번호를 잊으셨나요?

아직 계정이 없으신가요? 회원가입 하기

해당 질문을 신고하는 이유를 간단히 입력해주세요.

해당 답변을 신고하는 이유를 간단히 입력해주세요.

해당 유저를 신고하는 이유를 간단히 입력해주세요.

로그인회원가입

고캐드 – 캐드(CAD) 정보의 중심

고캐드 – 캐드(CAD) 정보의 중심 Logo 고캐드 – 캐드(CAD) 정보의 중심 Logo

고캐드 – 캐드(CAD) 정보의 중심 Navigation

  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
검색
질문하기

Mobile menu

닫기
질문하기
  • 홈
  • 카테고리
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 투표
  • 커뮤니티 그룹
  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
홈/ 질문/Q 111315
다음
Lv.0
등록일: 2019-05-132019-05-13T13:53:10+09:00 2019-05-13T13:53:10+09:00카테고리: AutoCAD & CADian

text를 mtext로 변경하는 리습 수정 질문 드립니다.

안녕하세요. 고수님들의 도움이 필요합니다.  아래 내용 보시고 도움을 주시면 감사하겠습니다.

일반 text를 mtext로 변경하는 리습입니다.
리습을 실행하고 나면 폭비율 (장평) 이  일괄적으로 1로 변경이 되서 안타까운 상황입니다.
혹시 일반 text일때 가지고 있던 폭비율을 그대로 가지고 mtext로 변경이 가능한지요?
어떤 내용을 수정해야 가능할까요?



;;—  TEXT를 MTEXT로 변경 ————————————

(defun c:TM (/ *error* acObj acDoc ss n en ent VCT VC VS MTE MinP MaxP AP pos slen)
(defun *error* (x) (setvar ‘nomutt 0) (setvar ‘cmdecho 1) (and acDoc (vla-endundomark acDoc)) (princ))
(prompt “TXT2MTEXTn다중행 문자로 변환 할 일반 문자를 선택…”)
(vl-load-com)
(or (setq ss (ssget (list (cons 0 “TEXT”)))) (quit))
(if (> (sslength ss) 200)
  (progn
    (eval
      (list ‘while (list ‘< ‘(getvar “millisecs”) (+ (getvar ‘millisecs) 200))
 ‘(princ “r작업 중 입니다. 잠시만 기다리세요…”)
      )
    )
    (setq slen (rtos (sslength ss) 2 0))
  )
)
(setq acObj (vlax-get-acad-object) acDoc (vla-get-ActiveDocument acObj))
(setq VCT (getvar ‘viewctr) VC (vlax-3d-point VCT) VS (getvar ‘viewsize))
(vla-startundomark acDoc)
(setq n 0)
(setvar ‘nomutt 1)
(setvar ‘cmdecho 0)
(repeat (sslength ss)
  (setq en (ssname ss n) ent (entget en) n (1+ n))
  (if slen (princ (strcat “rProcess: ” (rtos n 2 0) “/” slen)))
  (if (not (apply ‘and (mapcar ‘= (list (getvar ‘viewctr) (getvar ‘viewsize)) (list VCT VS))))
    (vla-ZoomCenter acObj VC VS)
  )
  (setq pos
    (cond
      ((= (cdr (assoc 73 ent)) 3) (+ 1 (cdr (assoc 72 ent))))
      ((= (cdr (assoc 73 ent)) 2) (+ 4 (cdr (assoc 72 ent))))
      ((<= (cdr (assoc 72 ent)) 3) (+ 7 (cdr (assoc 72 ent))))
      (T 5)
    )
  )
  (vla-GetBoundingBox (vlax-ename->vla-object en) ‘MinP ‘MaxP)
  (setq AP (mapcar ‘/ (apply ‘mapcar (append ‘(+) (mapcar ‘vlax-safearray->list (list MinP MaxP)))) ‘(2.0 2.0)))
  (setq MTE
    (vl-remove nil
      (list
 (cons 0 “MTEXT”) (cons 100 “AcDbEntity”) (cons 67 0) (assoc 410 ent) (assoc 8 ent)
 (if (assoc 6 ent) (assoc 6 ent) (cons 6 “BYLAYER”)) (if (assoc 347 ent) (assoc 347 ent))
 (if (assoc 62 ent) (assoc 62 ent) (cons 62 256)) (cons 100 “AcDbMText”) (assoc 10 ent) (cons 71 7)
 (assoc 40 ent) (cons 41 0) (assoc 7 ent) (assoc 1 ent) (assoc 50 ent)
      )
    )
  )
  (entdel en)
  (vl-cmdf “UNDO” “Mark”)
  (initcommandversion 2)
  (vl-cmdf “EXPLODE” (entmakex MTE) “”)
  (vla-GetBoundingBox (vlax-ename->vla-object (entlast)) ‘MinP ‘MaxP)
  (setq AP
    (mapcar ‘-
      (mapcar ‘/ (apply ‘mapcar (append ‘(+) (mapcar ‘vlax-safearray->list (list MinP MaxP)))) ‘(2.0 2.0))
      AP
    )
  )
  (setq MTE (subst (cons 10 (append (mapcar ‘- (cdr (assoc 10 ent)) AP) ‘(0.0))) (assoc 10 ent) MTE))
  (vl-cmdf “UNDO” “Back”)
  (setq MTE (entmakex MTE))
  (and pos (/= pos 7) (vla-put-AttachmentPoint (vlax-ename->vla-object MTE) pos))
)
(setvar ‘nomutt 0)
(setvar ‘cmdecho 1)
(vla-endundomark acDoc)
(prompt (strcat “n” (rtos n 2 0) “개의 객체가 다중행 문자로 변환 되었습니다.”))
(princ)
)










혹시 추가로 아래 장평 변경하는 리습을 사용하여 mtext도 가능하게 변경이 될까요?
고수님들의 도움이 필요 합니다
부탁드리겠습니다


;;—  글자 장평 변경 ————————————


(DEFUN C:TW( / SS1 HT NUM INDEX ENTL CO ENTL1 ASS)
        (SETQ SS1 (SSGET ))
        (SETQ HT (GETREAL “ENTER NEW TEXT WIDTH ?:”))
        (SETQ NUM (SSLENGTH SS1))
        (SETQ INDEX 0)
        (REPEAT NUM
                (SETQ ENTL (ENTGET (SSNAME SS1 INDEX)))
                (SETQ INDEX (1+ INDEX))
                (SETQ ASS (ASSOC 0 ENTL))
                (IF (= “TEXT” (CDR ASS))
                   (PROGN
                        (SETQ ASS1 (ASSOC 41 ENTL))
                        (SETQ CO (CONS (CAR ASS1) HT))
                        (SETQ ENTL1 (SUBST CO ASS1 ENTL))
                        (ENTMOD ENTL1)
                    )
                )
             )
        )


 











 



 

  • 0
  • 109 조회
공유
  • Facebook

    관련 있는 질문들

    • 캐드, zw캐드 와이프아웃 박스가 너무 많이 생겨요. 폴리선 박스가 중첩으로 많이 생겨요
    • 오토캐드 2016 맞춤법 검사기 끄는 방법 아시나요
    • 캐드에서 여러도면을 한번에 배치출력 할 수 있는 방법이 있나요
    • step파일, iges 파일을 열어서 볼 수 있는 방법이 있을까요?

    Sidebar

    질문하기
    공지사항

    • AI CAD의 미래! 캐디안 2025 1+1 프로모션 안내 2025-05-14

    Adv 234x60

    aalan

    Adv 234x60

    aalan

    Adv 120x600

    aalan

    Explore

    • 홈
    • 카테고리
      • AutoCAD & CADian
      • Inventor & Solidworks
      • Revit & ArchiCAD
      • 자유질문
      • 기타
    • 투표
    • 커뮤니티 그룹
    aalan

    Footer

    Support

    • 회사 및 서비스 소개
    • 자주 묻는 질문
    • 문의하기

    Guide

    • 제휴/협업 안내
    • 광고 서비스 안내

    Policy

    • 서비스 이용약관
    • 개인정보 처리방침
    • 광고성 정보 수신 동의

    Contents

    • 고밍스토리
    • 리습 시리즈

    정소프트 | 사업자등록번호 : 677-40-00198 | 대표 : 정은숙 | 이메일 : gocad.manager@gmail.com
    주소 : 서울특별시 강서구 양천로 400-12, 6층 614,615,617호(등촌동, 더리브골드타워)
    Copyright. 2012-2024 GOCAD All rights reserved