Autocad txtxexp problem. Change Scale and position of the text. Solution? and All about txtexp

I had about 4700 dwg files with Shx fonts and i have to convert all object (not Splines and Arcs and other impossible obj) to just lines. txtexp do this for texts but it have some issues to be fix.

one of most important items was that txtexp move and scale texts to another position. unfortunately there where nothing (or i didn't find!!) any thing in web. thanks my friend for his vital help.

solution is (setvar "insunits" 0). this change system variable insunits to zero that means unit-less. with this setting text do not move and scale during explosion.

Another problem of txtexp is its resolution and precision when exploding text. if you select single text it woks perfect but if you select text in a large area, text will be jagged and not so good. solution that i find is to write a lisp to select each text individually, then zoom to it and do explosion. it works good but takes a long long time.

before this you should Thaw, Unlock and Turn On all layers (that have text) if don't, you will get "No translatable objects" error.

and about mirroring text first try (command "MIRRTEXT" "0") and then if it doesn't work set all text-style backwards off. i do it in this lisp:

(defun C:BO (/ ad style oldcmdecho)  (vl-load-com)  (setq ad (vla-get-ActiveDocument (vlax-get-Acad-Object)))  ;(princ "Listed text style's height have been set to 0:")  (vlax-for style (vla-get-TextStyles ad)       (progn (vla-put-textgenerationflag style 0)       ;(princ "\n")       ;(princ (vla-get-Name style))      )    )   ;(setq oldcmdecho (getvar "cmdecho"))  ;(setvar "cmdecho" 0)  (command "._regenall")  ;(setvar "cmdecho" oldcmdecho) (princ))

and at last  if you want to explode all thing inside lisp by using "Explode" command  you will see it doesn't work. you should first set :(setvar "qaflags" 1)

hope to be useful.

Go Back



Comment