|
||
|
||
| AUTOCAD的绘图功能非常强大,然而处理批量文字尤 其是汉字的功能尚不够理想。虽然可以使用AUTOCAD软件包 中的ASCTEXT应用程序,但经使用表明这个程序的界面不 是很好,选项太多,而且程序运行中不允许调整各选项的 内容。下面介绍的名为ITX的程序则解决了上述问题。 ITX是由AUTOLISP语言编制、将外部的文字文件变成 图形的程序。它的特点是程序短小,全部中文提示,可以 反复调整字型、字高、字间距、插入点各选项。特别适合 引用含有汉字的大量文字。 使用ITX之前应先用EDIT等文本编辑软件编辑需要插 入到AUTOCAD中文字内容 ITX的主要功能有: ·自动产生汉字字型; ·自动计算行间距; ·允许多次修改各个选项的内容; ·判断是否存在指定的文件或字型; ·保存原有的字型设置。 ITX的使用方法如下: ·将ITX.LSP拷贝至ACAD12下面的SUPPORT子目录下 ; ·修改SUPPORT子目录下的ACADR12.LSP文件,在该 文件中加入(autoload"itx"'("itx")); ·键入ITX启动程序; ·首先输入插入的文件名(可以带目录),如果指定 的文件不存在,程序将退出; ·指定插入点; ·输入字型,缺省的字型为HZ。 如果用户使用缺省字型(HZ)而且已经定义了该字型 ,程序则把它设定为当前字型;否则将程序自动产生的HZ 字型设定为当前字型。 如果指定的字型不存在,程序将退出。 ·输入字高,缺省值是当前字高。 可以输入数值,也可使用鼠标指定两点确定字高。 ·输入字间距。首次显示的缺省值是字高的1.5倍。 输入方法同上。 ·确定是否进行调整。回答“Y”重新设定插入点、 字型、字高及字间距,直到满意为止。回答“N”结束程序 。 程序清单如下: 程序名:ITX.LSP 程序内容: (defun*ERROR*(err)(prompt"ιn非正常退出 !请查明是否存在指定的文件或字型.")(princ)) (defunc:itx(/osfnamekspttslsdstxtdtne) (graphscr)(princ"ιn插入文字程序.") (setvar"cmdecho"0)(setvar"blipmode"0) (setqos(getvar"textstyle")) (setqfname(getstring"ιn请输入文件名:") ) (setqtxt(openfname"r")) (if(nulltxt)(quit)) (if(tblsearch"style""HZ") (setvar"textstyle""HZ") (command"style""HZ""txt,hztxt""""0 .85""""""""")) (setqk"Y")(while(Κk"Y") (if(nullsp)(princ"ιn请指定插入点:") (princ"ιn请指定插入点〈原插入点〉:")) (setqt(getpoint)) (if(/Κtnil)(setqspt)) (setqts(getvar"textstyle")) (princ(strcat"ιn请输入字型名Ι"ts"Λ:" )) (setqt(getstring)) (if(/Κt"")(setqtst)) (setqe(tblsearch"style"ts)) (if(nulle)(quit)) (setvar"textstyle"ts) (princ(strcat"ιn输入字高Ι"(rtos(getvar "textsize"))"Λ:")) (initget32)(setqt(getdist)) (if(/Κtnil)(setvar"textsize"t)) (if(nullls)(setqls(*1.5(getvar"textsi ze:))) (princ(strcat"ιn输入字间距Ι"(rtosls)" Λ:")) (initget32)(setqt(getdist)) (if(/Κtnil)(setqlst)) (setqds(strcat"Ν"(rtosls)"Ι-90")) (setqtxt(openfname"r")) (setqdt(read-linetxt)) (command"undo""mark") (command"text"sp""""dt) (setqdt(read-linetxt)) (whiledt (command"text"ds""""dt) (setqdt(read-linetxt))) (closetxt) (setqk(strcase(getstring"ιn是否进行调整[ Y/N]ΙNΛ:"))) (if(Κ"Y"k)(command"undo""back")) ) (setvar"cmdecho"1) (setvar"blipmode"1) (setvar"textstyle"os) (princ) ) |
||
| :查看相关: | ||