Описанная в данном примере процедура иллюстрирует модификацию файла шрифта AutoCAD с именем Romans, но этот метод можно применять для любого шрифта. К описанию шрифта добавляются четыре новые формы: super_on, super_off, sub_on и sub_off, которые управляют положением и размером следующих за ними символов. Для простоты в данном примере квадратные ([ и ]) и фигурные скобки ({ и }) заменены новыми символами. Пользователь может выбрать для данной операции другие символы или использовать номера форм из расширенной части таблицы ASCII (коды от 128 до 256). В последнем случае необходимо использовать метод %% nnn для размещения новых символов (где nnn – это ASCII-код символа).
Символы квадратных скобок имеют коды ASCII 91 и 93 (для шрифтов Unicode используются шестнадцатеричные значения 05B и 05D). Символы фигурных скобок имеют коды ASCII 123 и 125 (шестнадцатеричные значения 07B и 07D).
*UNIFONT,6,Extended Simplex Roman for UNICODE 21,7,2,0 21 + 7 = 28, then 28 / 2 = 14. This number is used later.
*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 - это половина максимальной высоты символов данного шрифта, что является правильным приближенным значением для верхних и нижних индексов. Это значение необходимо вычислять для каждого файла шрифта отдельно, но пользователь может изменить его по своему желанию.
После того как форма откомпилирована и задан нужный стиль, можно вызывать новые команды для поднятия и опускания пера путем ввода квадратных ([ и ]) и фигурных скобок ({ и }). Символ "[" (левая квадратная скобка) активирует стиль верхнего индекса, а "]" (правая квадратная скобка) возвращает шрифт в обычное состояние. Символ { (левая фигурная скобка) инициирует нижний индекс, а } (правая фигурная скобка) возвращает шрифт в обычное состояние.