AutoCAD文本的剖析
2012-09-15张小红
张小红
(无锡职业技术学院,江苏 无锡 214121)
AutoCAD文本的剖析
张小红
(无锡职业技术学院,江苏 无锡 214121)
AutoCAD文本的功能强大,它既能“书写”文字,也能“书写”符号,更能“书写”图形。通过文本样式的设定,可以达到不同文本的同时书写目的;通过字体的映射,可以将相同的字体显示为不相同的效果,并解决乱码现象;通过形文件可以创建字体。
文本;形;映射;文本样式;字体
AutoCAD中,文本的功能非常强大。在实际使用中,很多人不知道其功能的强大,以至于图样上“书写”的字体有的不符合国家标准,有的就根本“写”不出来,出现问号等乱码;有时拿到他人的或者用户的图样,打开图样时,图样上的文字要么一片乱码,要么是一段不成文的文字,有时就干脆什么也没有,弄得看图的人一片茫然。要解决这些问题,必须搞清楚AutoCAD中文本的内部关系。
1 文本的功能
在AutoCAD中,文本的功能是通过Text或者DText或者MText命令来实现的。Text或者DText是进行单行文本的操作,在一次操作中所使用的文本样式只能用一种,不同的字体之间不能在Text或者DText命令执行中转换。MText命令是进行多行文本操作的,进入的状态类似于一个Word编辑环境,在一次操作中可以“书写”不同的字体。文本的编辑是通过DDedit来实现的,选择不同命令产生的字体编辑起来的界面也不同。
2 AutoCAD中形文件(*.shp,*.shx)与字体
在AutoCAD中,字体分为两类,一类是使用操作系统中的字库的字体,还有一类就是Auto-CAD自带的字体,它们以形文件的形式出现。
AutoCAD中字体和形文件(SHX)是从形定义文件(SHP)编译而成。形定义文件可用写字板等文本编辑器将文件存为ASCII格式的字处理器创建或编辑。
对于AutoCAD来说文字是一种重复使用率很高的一种图形,而且速度还很快,形的存储和绘制正符合这些要求而且高效。
形定义文件的每一行最多可包含128个字符。超过此长度的行不能编译。
每个形说明都有一个标题行,以及一行或多行定义字节。这些定义字节之间用逗号分隔,最后以0(零)结束。
标题行格式如下:
形各个字段的含义分别为:
Shapenumber:文件中唯一的一个1到258之间的数字(对于Unicode字体,最多为32768),记住前面一定带有星号 (*)。字体(包含每个字符的形定义的文件)的编号要与每个字符的ASCII码对应;其他形可指定任意数字。
defbytes:用于说明形的数据字节的数目,包括末尾的0。每个形最多可有2000个字节。
shapename:形的名称。形的名称必须大写,以便于区分。若形名中有小写字母,名称将被忽略,并且通常用作字体形定义的标签。
specbyte:形定义字节。每个定义字节都是一个代码,要么定义矢量长度和方向,要么是特殊代码的对应值之一;定义字节可以用十进制或者十六进制值表示。也可同时使用了十进制和十六进制定义字节值。如果形定义字节的第一个字符为0(零),则后面的两个字符解释为十六进制值。
AutoCAD用形文件定义的字体有72种之多,包括符合工程图样要求的各种字体(如isocp.shx)、符号(如gdt.shx),西文字体、东方字体—bigfont(如gbcbig.shx—中文、bigfont.shx—日文、extfont.shx—朝鲜文字)、地图符号—symap.shx、数学符号—symath.shx、音乐符号—symusic.shx等等,可以说是包含了各个方面的常用符号。
3 文本样式与字体的关系
文本样式(STYLE)可以用来选定不同的字体(font)。如果文本样式名称不变,但选择的字体变了,那么以该名称所显示的文字将会变成现在选择的字体所对应的文字风格。如在同一图样中,要显示不同的字体风格,就要设置不同的文本样式,以对应不同的字体风格,这也就是在AutoCAD系统中为什么既要有文本样式,又要有字体文件的缘故了。
一个文本样式中可以只包含一种操作系统中的文字,也可以包含一种AutoCAD系统中自带的字体(.shx文件)和一种东方字体(.shx文件)。需要特别注意的是,只有使用AutoCAD系统中自带的字体(.shx文件)才能使用东方字体(.shx文件),换句话说,就是东方字体(.shx文件)不能单独使用,必须与AutoCAD系统中自带的字体(.shx文件)联合起来才能使用。
4 不同字体的混合书写
要想在一次文字输入中既要写西文又要写中文,最好的办法是使用Mtext命令,在文字编辑器中,需要什么字体就选择什么字体,做到灵活输入。
要是用DText命令需要中西文混写的话,就一定要用文本样式(STYLE)命令先设置好文本样式,选择一种AutoCAD系统中自带的西文字体(.shx文件),并使用大字体,从而才能选取到中文字体gbcbig.shx。只有这样才可以用DText输入中西文混写的文字。
5 文本编辑器的选择
在对AutoCAD中的文字进行编辑时,用不同的命令输入的文字会出现不同的编辑界面。用Dtext输入的文字,就在文字行上编辑;用Mtext命令输入的文字,就会进入用Mtext命令文字是的界面。
在安装AutoCAD时,安装程序会提示用户想使用系统自带的文字编辑器还是用其他的文字编辑器。如果在安装AutoCAD程序时选择的是系统默认,则就用AutoCAD自带的编辑器界面,如果想使用像Word一样的文字处理软件,则应该用Options命令,在文件标签里找到“文本编辑器、词典和字体文件名→文本编辑器应用程序→内部”在“内部”前面的粗箭头上双击,浏览到需要的文字处理软件的.exe文件(如Word的winword.exe),确定即可。以后输入和编辑文字时就进入了新的所选择的文字处理软件的编辑界面了。
6 字体的映射
字体映射就是用一种字体文件去替代另一种字体文件。
如果在打开一个图形文件时找不到指定的字体文件时就要使用替换字体。如果打开的图形文件具有已定义的文字样式但未指定替换字体,将显示“替换字体”对话框。如果不要用“替换字体”对话框中的字体,就可以使用修改字体映射文件,来满足需要。
AutoCAD系统中指定的字体映射文件是acad.fmp。如果该文件中没有所需要的文字映射语句,可以在其中加入一行,例如,要使用SIMFANG TrueType字体替换gbcbig.shx,在映射文件中将如下表达:
gbcbig.shx;SIMFANG.TTF
如用户自己创建一个*.fmp文件,则可以用FontMap命令,调取用户创建的文件。
如果FontMap没有指向字体映射文件,或未找到*.fmp文件,或者未找到*.fmp文件中指定的字体文件名,则将使用样式中定义的字体。如果未找到样式中的字体,将会根据替换规则替换字体。
如果要始终保持用户的映射效果,则应该用Options命令,在文件标签里找到“字体映射文件”在粗箭头上双击,浏览到用户自己创建的*.fmp文件。
FontMap只能用于通过Mtext命令创建的文字。
下面举一个例子:
文本样式名称为汉字,设置的字体为isocp.shx,使用大字体为gbcbig.shx,未使用字体映射前,效果如下:
文本样式名称仍为汉字,设置的字体为isocp.shx,使用大字体为gbcbig.shx,在acad.fmp文件中加上一行“gbcbig.shx;SIMFANG.TTF”后,效果如下:
SIMFANG.TTF对应的字体是操作系统中的仿宋字体。
7 符合国家标准的图样字体
图样上的字体必须符合国家标准,这一点很重要。
符合图样上国家标准的数字和字母字体有isocp.shx、gbeitc.shx、isoct.shx等,汉字字体(长仿宋体)为gbcbig.shx,几何公差的字体为gdt.shx。可以设置多种文本样式,如一种“汉字”,一种“几何公差”等。
“汉字”文本样式设置过程为:输入命令Style→进入“文字样式”对话框→ “新建(N)”文本样式→输入文本样式名“汉字”→在“字体名(F)”中选中isocp.shx→点选“使用大字体选框(U)”→在“字体样式(Y)”选中gbcbig.shx→应用(A)→置为当前(C)→关闭(C)。
AutoCAD系统中文本的功能很强大,还有很多的功能有待挖掘。
[1] 周克绳,陈德新.AutoCAD计算机绘图软件(2.6~9.0版)[M].北京:国防工业出版社,1991.
[2] Autodesk公司.AutoCAD用户参考手册[M].北京:科海出版社,1992.
Dissection on Text Functions of AutoCAD
ZHANG Xiaohong
(Wuxi Institute of Technology,Wuxi 214121,China)
The AutoCAD Software has powerful text functions.It can“write”texts as well as symbols.Furthermore,it can“write”graphics.Through setting the styles of text,it can create different texts simultaneously;through mapping the fonts,it can show a same font with different visual effects and resolve the problem of messy code;through shape files it can generate new fonts.
text;shape;mapping;style;font
TP 391.41
A
1671-7880(2012)04-0067-03
2012-03-15
张小红(1962— ),男,江西萍乡人,副教授,主要研究方向:工程图学,计算机辅助设计与制造。