;================================================================================
;D. Marker 10-08-1999
;================================================================================
(defun c:ltxt ()
(setvar "cmdecho" 0)
(setq v:clayer (getvar "clayer"))
(setq v:expert (getvar "expert"))
(if (not v:linet)
(setq v:linet "XX")
) ;if
(setq v:linet_x (getstring (strcat "\n \n \nEnter line text: <" v:linet ">")))
(if (/= v:linet_x "")
(setq v:linet (strcase v:linet_x))
) ;if
(setq v:linet (strcase v:linet))
(setvar "expert" 4)
(setq v:linet_l (strlen v:linet))
(setq v:linet_w (rtos (* v:linet_l 0.1) 2 1))
(setq v:lt_file "c:\\temp\\lt_temp.lin")
(setq v:lt_var1 (open v:lt_file "w"))
(setq v:lt_textl1 (strcat "*" v:linet "," v:linet "----" v:linet "----" v:linet
"----" v:linet
));setq
(setq v:lt_textl2 (strcat "A,.5,-.2,[" (chr 34) v:linet (chr 34)
",STANDARD,S=.1,R=0.0,X=-0.1,Y=-.05],-" v:linet_w
));setq
(setq v:lt_var2 (write-line v:lt_textl1 v:lt_var1))
(setq v:lt_var3 (write-line v:lt_textl2 v:lt_var1))
(close v:lt_var1)
(command "-linetype" "l" v:linet v:lt_file "")
(setvar "expert" v:expert)
(command ".celtype" v:linet)
(princ (strcat "\n \n \nCurrent Entity linetype set to:" v:linet))
(princ)
(setq v:pnt1 (getpoint "\nPick start point:"))
(command "pline" v:pnt1)
(while (setq v:pt (getpoint (getvar "lastpoint")
"\nNext point or <Return to terminate>:"
));getpoint, setq
(command v:pt)
) ;while
(command)
(command)
(setvar "celtype" "bylayer")
(princ)
(princ "\n \nLine-Text terminated. Linetype set to BYLAYER:")
(princ)
) ;defun
(princ)
(princ " Line-Text Loaded...")
(princ)
(princ (strcat "\n \n" (chr 34) "LTXT" (chr 34) " to execute:"))
(princ)
Check that out. I use it all the time. Works good.
Pete