프로그램
캐드 분류

텍스트 자르기<br>텍스트 자르기

컨텐츠 정보

본문

여기서 글씨를 자르면 밑에 두줄로 되는데 한줄로 하는 방법이요~ 알려주시면 정말 감사하겠습니다. ㅠㅠ

;text cut
(defun @txtcut (/ ss en1 oldtxt sn st txt osl nsl tno ox condi txt1 txt2 h ang en2 t_sub_txt len)
   (setvar "cmdecho" 0)  (setq ss nil)
   (while (= ss nil) (setq ss (ssget ":s" (list (cons 0 "text"))))  )
      (setq en1 (ssname ss 0))
      (setq oldtxt (cdr (assoc 1 (entget en1))))
      (setq sn (cdr (assoc 7 (entget en1))))
      (setq st t)
      (while st
         (setq txt (getstring "n분리될 첫단어: "))
         (if txt   (setq st nil) )
      )
      (setq osl (strlen oldtxt))
      (setq nsl (strlen txt))
      (setq tno 1) (setq st t)
      (while (and st (< tno osl))
             (setq ox (substr oldtxt tno nsl))
             (if (= ox txt)
                 (setq st nil condi t)
                 (setq tno (1+ tno))
             )
      )
      (if condi
          (progn
             (setq txt1 (substr oldtxt 1 (- tno 1)))
             (setq txt2 (substr oldtxt tno (- osl (- tno 1))))
             (setq h (cdr (assoc 40 (entget en1))))
             (setq ang (cdr (assoc 50 (entget en1))))
             (command "copy" en1 "" (list 0.0 0.0 0.0)
                      (polar (list 0.0 0.0 0.0) (- ang (/ pi 2.0)) (* h 2.0))
             )
             (setq en2 (ssname (ssget "l") 0))
             (setq t_sub_txt (strcase (substr txt1 1 3)))
             (if (= (strcase t_sub_txt) "%%U") (setq txt1 (strcat txt1 "%%u")) )
             (entmod (subst (cons 1 txt1) (assoc 1 (entget en1)) (entget en1) )  )
             (setq len (strlen txt2))
             (setq t_sub_txt (strcase (substr txt2 (- len 2) 3)))
             (if (= (strcase t_sub_txt) "%%U") (setq txt2 (strcat "%%u" txt2))  )
             (entmod (subst (cons 1 txt2) (assoc 1 (entget en2)) (entget en2) )  )
          )
      )
)


하나의 텍스트를 원하는 곳에 break 시켜주는 리습입니다..
어떤 분이 부탁하셔서…

관련자료

댓글 0
등록된 댓글이 없습니다.
여분필드1 여분필드2 여분필드3
전체 66 / 1 페이지
번호
제목
이름
알림 0