|

楼主 |
发表于 2012-7-11 09:34
|
显示全部楼层
四、字体文件的定制:/ }5 H6 G3 |. M( K* ?
在CAD中用户可自己定义扩展名为“ .shp”形定义字体文件。“ .shp” 形定义字体文件是ASCII 格式的文件,你可以使用文本编辑器或字处理器编辑进行编辑。 然后使用CAD 的“compile”命令编译该 ASCII 文件,编译后会形成扩展名为“ .shx”的形文件,此文件可使用“STYLE ”命令装载后使用。如果编译前的形定义文件定义了字体,则可用 STYLE 命令定义文字样式,然后用文字输入命令(TEXT、DTEXT 或 MTEXT)将字符写入图形中。: i8 X4 X' p3 X r3 o9 ]8 E
常见ASCII字体文件的编写格式如下:6 ?9 @ N! a( ?6 a# F6 M
*0,4,Standard Font 10/23/91 ;字体必须包括的特殊形编号 05 ]/ M8 K( x7 d% S- d' D
6,2,2,0 ;定义字节行, f$ O% ^0 X7 o+ m( u. H
*10,7,lf ;标题行
" {, |$ ]/ z8 N+ g4 x2,0AC,14,8,(9,10),0 ;0AC为十六进制值
( g. q$ C5 r' {/ u*32,7,spc0 e6 N( ^! [2 [( m0 W
2,060,14,8,(-6,-8),0
7 I$ i+ {# D- ^! v以下略。' h0 Q! g, R+ v# W% u9 u
形定义文件的每一行最多可包含 128 个字符,超过此长度的行不能编译。CAD 忽略空行和分号右边的文字。利用分号可以在形定义文件中包含注释。每个形说明都有一个标题行,以及一行或多行定义字节。这些定义字节之间用逗号分隔,最后以 0 结束。格式如下:*编号, 数据字节 , 名称 形定义字节1, 形定义字节2, 形定义字节3,...,0 下面为形各个字段的说明:
- b* \/ W3 f$ c; b8 K# ^“编号”段, d7 X! M# @+ p+ ?6 W/ b
“编号”段在形定义文件中对应唯一的一个形,“编号”段的数字必须在 1 到 258 之间,带前缀星号。
% d+ Q7 Z* R3 r8 n2 L: L+ ^3 T2 B1 i' S- U5 j& w, a' ~
如果定义的是字体文件,则“编号”段的数字编号要与定义的每个字符的 ASCII 码对应。7 p+ \0 O2 \( ], S0 H6 {
“数据字节” 段
" u& b1 g `" ?" G+ E% e用于描述形使用的数据字节数目,包括结尾的“0”。每个形最多可有 2,000 个数据字节。" m8 i) p3 r3 x
“名称” 段+ i1 i0 Y: a5 _$ y" d, D
形的名称。形名称必须大写,以便于区分。包含小写字符的名称被忽略,并且通常用作字体形定义的标签。
1 L" I2 M# q# n“形定义字节” 段
) F' o! H! N, w" `; w7 g每个定义字节都是一个代码,或者定义矢量长度和方向,或者是特殊代码的对应值之一。在形定义文件中,定义字节可以用十进制或十六进制表示。如果形定义字节的第一个字符为 0(零),则后面的两个字符解释为十六进制值。定义文件定义“ASCII字体”时,第一个形说明必须为特殊的形编号 0,以提供字体本身的信息。其格式如下:. G. q" @; h4 Z. }
*0,4,font-name
1 Z, Z0 F( h4 c/ T- habove,below,modes,0* K- F) x9 U9 h8 b: Z
其中,above 指定大写字母从基线往上扩展的矢量长度,below 指出小写字母从基线下降的距离。这些值定义了基本字符尺寸,用作 TEXT 命令中指定高度的比例因子。; v. z- y: J1 b+ E- p
modes 字节对水平字体应该为 0,对双向(水平或垂直)字体为 2。. R% J& b- @5 M% [; R' L. y) u' n% r
CAD 提供的标准字体包括一些 CAD 标注功能所需的其他字符。例如以下:8 R1 J7 k$ o- i2 B! a
%%d 度符号 ( °)( I, ] Q# r1 F4 R D& |3 W
%%p 正/负公差符号 (±)
" X5 i- t: G& o%%c 圆直径标注符号 (φ)) W" t, i+ ]6 x* v. J- Y
%%o 打开或关闭上划线模式。9 o2 U- F; P/ |) }0 T9 |1 Q' C
%%u 打开或关闭下划线模式。 s i( n* D) Z+ Y2 @( g: I: x5 l4 e$ Z
%%% 绘制一个百分号。$ ]% R# X( V' S( X: @9 W* J
请注意:如果要定义“大字体”时,大字体形定义文件的第一行必须以“*BIGFONT”开始。 |
|