- UID
- 112811
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-3-13
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
我照做了,可是调用ROMANS中的[]()还是不行,%%91..也不行。谁能帮我解释一下。
向字体中添加上标和下标定义的步骤
此样例的过程基于 AutoCAD 的 ROMANS 字体文件,类似方法可应用于任何 AutoCAD 字体。此过程向字体中添加四个新的形定义:super_on、super_off、sub_on 和 sub_off,这四个形定义控制后面字符的位置和尺寸。简而言之,此样例用新的字符替换了左右方括号字符([ 和 ])和左右大括号字符({ 和 })。用户可以选择替换其他字符,或者使用扩展区(ASCII 码 128 到 256)的形编号。如果使用扩展的形编号,则需要用 %%nnn 方法(其中,nnn 是字符的 ASCII 值)放置新字符。(请参见 ASCII 码。)
用 ASCII 文本编辑器编辑 SHP(在此例中,是 romans.shp)文件。用户可创建一个名为 romans.shp 的新文件,而不是修改原文件。AutoCAD CD 中提供了 romans.shp 文件。
搜索要替换的字符的形定义。需要将这些定义变成注释,才能用新定义取代它们。要将形定义变成注释,请在每行形定义的行首插入分号。形定义可能延续数行。
左右方括号的 ASCII 值分别为 91 和 93(如果字体为 Unicode,则十六进制值分别为 05B 和 05D);左右大括号的 ASCII 值分别为 123 和 125(十六进制值分别为 07B 和 07D)。
将第一和第二个值加入定义的第二行,然后将其和除以 2,如下例所示:
*UNIFONT,6,Extended Simplex Roman for UNICODE
21,7,2,0 21 + 7 = 28, then 28 / 2 = 14. This number is used later.
将下列行添加到 SHP 文件的末尾:
*91,8,super_on
2,8,(0,14),003,2,1,0
*93,8,super_off
2,004,2,8,(0,-14),1,0
*123,8,sub_on
2,8,(0,-14),003,2,1,0
*125,8,sub_off
2,004,2,8,(0,14),1,0
请注意上述行中的 14 和 -14 值。它们是虚拟笔的 Y 轴偏移。值 14 是此字体字符最大高度的一半,约等于上标和下标的高度。对每个字体文件都需要重新计算此值,但用户可根据实际需要对它进行修改。
保存此文件。
使用 COMPILE 命令编译该 SHP 文件。
当形经过编译,并且定义了适当的样式后,用户就可通过输入 [、]、{ 和 } 字符来访问新的提笔和落笔命令
。[ 字符开始上标,] 字符从上标返回常规字体;{ 字符开始下标,} 字符从下标返回常规字体。 |
|