为字体添加上标和下标定义的步骤

尽管类似方法可应用于任意字体,但此样例过程基于 AutoCAD 的 ROMANS 字体文件。此过程向字体添加了四个新的形定义:super_on、super_off、sub_on 和 sub_off,这四个形定义控制后面字符的位置和尺寸。简而言之,该示例中用新的字符替换了方括号字符([])和大括号字符({})。用户可以选择替换其他字符,或者使用扩展区(ASCII 码 128 到 256)的形编号。如果使用扩展的形编号,则需要使用 %%nnn 方法来放置新字符(其中 nnn 是字符的 ASCII 值)。

  1. 使用 ASCII 文字编辑器(例如,Windows 上的记事本或 Mac OS 上的 TextEdit)编辑 SHP 文件。
  2. 搜索要替换的字符的形定义。需要将这些定义变成注释,才能用新定义取代它们。要将形定义变成注释,请在每行形定义的行首插入分号。形定义可能延续数行。

    左右方括号的 ASCII 值分别为 91 和 93(如果字体为 Unicode,则十六进制值分别为 05B 和 05D);左右大括号的 ASCII 值分别为 123 和 125(十六进制值分别为 07B 和 07D)。

  3. 将第一和第二个值加入定义的第二行,然后将其和除以 2,如下例所示:
    *UNIFONT,6,Extended Simplex Roman for UNICODE
    21,7,2,0 21 + 7 = 28, then 28 / 2 = 14. This number is used later.
  4. 将下列行添加到 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 是此字体字符最大高度的一半,约等于上标和下标的高度。对每个字体文件都需要重新计算此值,但用户可根据实际需要对它进行修改。

  5. 保存文件。
  6. 使用 COMPILE 命令编译 SHP 文件。

    编译形且定义了适当的样式后,用户就可通过输入方括号字符([])和大括号字符({})来访问新的提笔和落笔命令。[(左方括号)字符开始上标,](右方括号)字符从上标返回常规字体。{(左大括号)字符开始下标,}(右大括号)字符从下标返回常规字体。