Практика работы в редакторе ChiWriter: 
         широкие недокументированные возможности 

          Д.А.Лисаченко
          Санкт-Петербургский университет, 
          физический факультет. 
         
                        Санкт-Петербург, 1994 
                        
         Полный текст с драйверами находится в ftp-архиве
         www.kiarchive.ru/pub/msdos/printer/chiprint.zip    
      
    
        1. Новые драйверы
        2. FAQs (Проблемы и ответы) 
        3. Как усовершенствовать режимы печати 
      
     Уважаемые коллеги, 

     Поскольку вопрос о лучшем текстовом редакторе в принципе  неразрешим,  я 
позволю себе высказаться в поддержку ChiWriter'а, никак не ставя себе задачей 
отвратить людей от "солидных систем" типа TeX или Word. 
     То, что  ChiWriter на AT/286 - метод дедовский, никак не уменьшает долж- 
ного к нему уважения, поскольку многие наши ученые и инженеры создали и будут 
создавать в этом редакторе огромное количество текстов, ценность которых -  в 
содержании, а не внешней красоте. Именно с теми, кто работает в "русском сти- 
ле" - выжимая все возможное из нехитрой техники, я хочу поделиться практичес- 
ким опытом в двух направлениях: 1 - выход из "обычных"  затруднений,  и  2  - 
новинки за обычными рамками: возможности  ChiWriter'а гораздо шире  общеизве- 
стных. В основном они касаются того, что как-то  ускользает:  текст  надо  не 
только набрать, но и напечатать, и сделать это быстро, качественно и красиво. 
В то же время в обычном комплекте поставляются  лишь  простейшие  драйверы  - 
программы управления принтером, а имеющиеся книги, на мой взгляд,  оптимальны 
не для всех. 
     Здесь я пишу не о теоретических основах, о которых лучше всего сказано в 
документации на сам редактор и в книгах В.И.Фигурнова,  а  в  сжатом  виде  о 
своих и чужих ("фольклорных") находках в условиях нашей страны. 

     Итак, серьезными достоинствами  ChiWriter'а  для немалого класса пользо- 
вателей, прежде всего ученых и инженеров, я считаю: 

     1. На любой самой примитивной IBM-совместимой машине 
можно нормально работать, поскольку при работе все помещается  в  оперативной 
памяти и почти нет обращений к диску (дискете). 

     2. Компактность. Все необходимое для набора текста и для печати поме-
щается в архиве на одной дискете 360К, с которой можно и в гости ходить. Мож- 
но вообще не трогать винчестер: на дискете 360K  поместится  в  рабочем  виде 
все, необходимое для набора текста, а на 720К или 1.2М -  поместятся  и  весь 
редактор, и Ваши тексты. 

     3. Легкость и гибкость управления принтером любого типа, 
в том числе простота использования и свободного комбинирования  его  встроен- 
ных, загружаемых и графических шрифтов, причем в гораздо более широких преде- 
лах, чем предусмотрено стандартным комплектом. Для этого Вам достаточно осво- 
ить несколько простых команд, используемых в драйверах (файлах *.prn). 

     4. Высокая скорость печати. Для примера скажу, что на IBM XT с руси-
фицированым принтером EPSON FX-1050 три экземпляра (под копирку)  диссертации 
с большими формулами я печатал полтора часа, включая перекладывание бумаги. 

     Основные же недостатки этого редактора - несовпадение версий, проблемы с 
русскими буквами, медленная русская печать и т.д. - преодолеваются  на  самом 
деле достаточно просто.  

      Как построена эта статья? 

     1. Если у Вас нет проблем, но есть ChiWriter версии В.Фигурнова, то про- 
сто попробуйте пару новых драйверов, записав их в Ваш ChiWriter и выбрав их в 
меню Print - Change Printer, и оцените эффект. 

     2. Если у Вас иногда возникают сложности и неудобства, то читайте дальше 
-  раздел  "Вопросы  и  ответы".  Подразумевается,  что  Вы  ориентируетесь  в 
ChiWriter'е версии 3.xx в объеме книги В.И.Фигурнова "IBM PC для  пользовате- 
ля" (или готовы в нее посмотреть).  Реализация  некоторых  советов  подробнее 
описана в разделе 3. Если Вашего вопроса здесь нет - напишите мне! 

     3. Наконец, если Вы - человек бывалый и готовы навести порядок в  конфи- 
гурации и усовершенствовать драйверы, то в разд.3 найдете практические советы 
(только не создавайте никаких новых шрифтов, кроме вавилонской  клинописи,  и 
никогда не переставляйте местами буквы: Вас не поймут!). При этом Вам желате- 
льно понимать управляющие команды Вашего принтера и, возможно,  придется  за- 
глянуть в толстую книгу В.Фигурнова "Работа пользователя с IBM PC",  особенно 
в Приложение 7. 

     4. Тексты драйверов прилагаются на дискете и в печатном виде. 

      Все здесь написанное будет понято любым IBM-совместимым ПК с 9-точечным 
принтером типа Epson, и без труда переносится и на  другие  принтеры,  в  том 
числе 24-точечные и лазерные, по крайней мере на идейном уровне. Набор  шриф- 
тов и конфигурацию оптимально иметь "от Фигурнова", иначе могут потребоваться 
мелкие исправления. 


     1. Драйверы

     1.1.  Драйвер POSTER15.PRN. 
Ничего не меняя в Вашем тексте, печатаете его  со  всеми  формулами  буквами, 
увеличенными в полтора раза (можно на большом листе и широком принтере).  Это 
удобно для оформления стендов. 
Наиболее вероятные исправления для других версий: 
а) если печатные шрифты, например, *.PFT, то замените строку EXTENSION .QFT на 
EXTENSION .PFT
б) уберите строки типа  FO STANDARD ISTANDARD. 

     1.2. Драйвер POP.PRN.  
 Быстрая однопроходная печать "экранными" шрифтами *.SFT уменьшенными буквами, 
можно поперек сложенного листа формата A4. В частности, в  3-4  раза  быстрее 
печатается русский текст на нерусифицированном принтере (удобно для  черновой 
распечатки). 

     1.3. Драйвер  CONDENS.PRN  -  комбинирует  встроенные  шрифты  в  режиме 
Condensed с экранными  *.SFT. На странице свободно помещается около 80  строк 
по 100 букв. 

     1.4. Драйвер DRAFT.PRN 
Быстрая печать черновыми буквами обычного  размера,  полученными  из  обычных 
печатных шрифтов *.QFT (см.также п.1.1.). 


     2. FAQ - Проблемы и ответы 

     2.1. Как спасаться от отсутствия истинно персональных компьютеров и 
хронического хождения "в гости" на ChiWriter неизвестной версии?  
 - Не так черт страшен. Надо иметь своею дискету с  качественной  версией,  а 
установка с нее занимает 1-2 минуты. А если дискета 720K или 1.2M,  то  можно 
работать прямо с ней, в том числе и как с системной, да еще записывая туда же 
Ваши тексты. 

     2.2. Почему так много нестыкующихся версий? 
 - Из-за поразительной легкости изготовления и  самоделок  и  прочих  обычных 
причин. 

     2.3. Каково лучшее средство решения всех проблем? 
 - раздобыть качественную версию ChiWriter'а. 

     2.4. Как выбрать лучшую версию? 
 - Рекомендую версию шрифтов и конфигурации В.Фигурнова (а основной исполняе- 
мый файл  cw.exe   - версии 3.15 или 3.16). Я "коллекционировал" разные  вер- 
сии и считаю, что эта - несмотря на мелкие недосмотры, наиболее цельная, вну- 
тренне согласованная, то есть профессионально "доведенная до ума" и удобная в 
работе. 

     2.5. А если уже много всего набрано в другой версии? 
 - Немедленно начинать "новую жизнь", а старые файлы совсем не сложно по мере 
надобности перекодировать с помощью программы ChiTran  В.Фигурнова,  а  то  и 
просто командой  Replace  или  переименованием  шрифтов  в  заголовке  Вашего 
Chi-файла. Может понадобиться  переделать  файл  config.asc  для  правильного 
Import ASCII (способ переделки очевиден из самого файла  и  сравнения  таблиц 
кодировок). 

     2.6. Сколько места занимает ChiWriter на винчестере? 
 - Если выкинуть все лишнее, то меньше 500K. А в архиве - чуть больше 
300K на все "нелазерные" случаи жизни. 

     2.7. А что обычно "самое лишнее"? 
 - Поскольку вместо инсталляции нередко сваливают в одну кучу все подряд, что 
удалось добыть, то возникают увесистые наборы печатных шрифтов всех  размеров 
и всевозможных кодировок (*.PFT, *.QFT, *.NFT, *.XFT и др.) , из которых нужен 
всего один - для Вашего принтера (9- или 24- точечный). Также достаточно все- 
го одного драйвера принтера (и, если  хотите,  двух-трех  дополнительных  для 
особых эффектов). 

                            В архиве      В рабочем состоянии

Исполняемый файл CW.EXE        - 100K         211K
Набор печатных шрифтов (9pin)  -  50K         215K
Набор экранных шрифтов (VGA)   -  12K          36K
Драйверы                       -  10K          30K
Конфигурация, ключи и пр.      -   3K           8K

А также  ChiTran,  Font Designer,  Vegainit,  Vegcolor,  словарь. 

     2.8. Что означает  Scaling Font...Please wait ?  
 - Значит, размер сетки печатного шрифта не соответствует драйверу.  Качество 
букв на печати - пониженное. 

     2.9. Как выбрать драйвер при печати? 
 - Их взаимозаменяемость очень высока. Проблема в основном в том, чтобы  пра- 
вильно выбрать драйвер под тип принтера (9- или  24-точечный)  и  под  размер 
сетки шрифтов, которыми Вы располагаете (16x24, 24x27, 20x30, 40x30 - в драй- 
вере это строка типа  SCAN ROWS=27 COLS=24, а в файле  шрифта  соответственно 
значения байтов 21 и 20). В противном случае перед печатью идет довольно уны- 
лое  перемасштабирование  (Scaling  Font.  Please  wait...).   Размер   сетки 
можно узнать и по объему файла шрифта  STANDARD.?FT: 

  Тип       ширина  высота    объем     основное применение

  SFT         8       10       1284      CGA,  EGA,  Hercules, ....
  EFT         8       16       1848      VGA, ...
  DFT        12        8       1848      черновая печать на 9-точ.принтере
  QFT        24       27       7958      9-точечный принтер
  NFT        18       36      10496      24-точечный принтер 
  XFT        40       30      14444      то же 
Cуществует немало шрифтов и других размеров, часто с тем же расширением. 

     2.10. Как в русском тексте печатать знаки препинания и цифры?  
 - Лучше всего - не в русском регистре, а в латинском (т.е. точка  -  это  не 
"Shift 7", а "F1 ."), что гарантирует совместимость версий и принтеров. 

     2.11. Можно ли ускорить процесс печати русским шрифтом, если он даже в 
Draftе печатается по 4 минуты на страницу? 

 - а) если Ваш принтер русифицирован, то примените соответствующий драйвер. 
   Его удобно доработать на встроенный шрифт в режиме Letter (см. ниже). 
 - б) если принтер не русифицирован, то для первых  черновиков  сойдет  очень 
   быстрая печать экранными шрифтами с драйвером  POP.PRN.  
 - в) то же -  драйвером  DRAFT.PRN,  используя  обычные  шрифты  *.QFT. 
   На каждую строчку уходит не 4 медленных прохода, а 1 быстрый. Можно  испо- 
   льзовать и специальные "черновые" шрифты *.DFT (в этом случае проверьте их 
   совместимость!).  

     2.12. Какая польза от шрифта FOREIGN? 
 - В английских текстах он не нужен, в  остальных  его  польза  отрицательна. 
Дело в том,  что  буквы  FOREIGN  нельзя  ни  выделить,  ни  подчеркнуть,  ни 
уменьшить, ни сделать с ними Export-Import ASCII. Лучше  переключить  принтер 
на "национальные символы",  которые  можно  подвергать  всем  преобразованиям 
(BOLD, Italic, Condensed, ...). 

     2.13. Что означают режимы печати Draft и Letter? 
 - Не совсем то, что обычно понимают. Экзотические шрифты (в том  числе  рус- 
ские на нерусифицированном принтере) во  всех  режимах  печатаются  абсолютно 
одинаково. Шрифты STANDARD, BOLD, ITALIC печатаются в режиме Draft встроенным 
черновым шрифтом, а в Letter -  обычно  медленным  качественным  графическим. 
Однако и лучшее качество, и более  высокую  скорость  даст  печать  в  режиме 
Letter встроенными NLQ шрифтами. 

     2.14. Какие существуют в ChiWriter типы пробелов? 
 - а) "жесткие", которые при форматировании не могут быть добавлены  или  ис- 
ключены автоматически; 
 - б) "мягкие" - могут; 
 - в) "склеивающие" - вставляются между словами, которые нежелательно  разно- 
сить в разные строки при переносе (например, в коротких строчных формулах). В 
его роли может выступать любая "пустая" буква, например, t из шрифта  Symbol. 

     2.15. Формулы при печати "поплыли" - индексы и показатели  съехали  со 
своих мест. 
 - Возможно, был поставлен режим "Proportional", либо у Вас графические шрифты 
типа "pIca" при режиме "Elite" и т.п. 

     2.16. Что означает понятие WYSIWYG в отношении ChiWriter'а? 
 - На экране все символы всегда одной ширины. То же и в  обычных  версиях  на 
печати, однако можно легко управлять шириной печатных символов, если  исполь- 
зовать встроенные шрифты принтера или режим Proportional. 

     2.17. В чем преимущества встроенных шрифтов? 
 - в скорости; 
 - в качестве; 
 - в гарантии совместимости: кодировок мало и они все хорошо  известны,  а  в 
самодельных графических шрифтах чего только не найдешь. 

     2.18. Почему буквы разных шрифтов печатаются иногда на разной высоте? 
 - см. решение в п. 3.3.1. 

     2.19. Можно ли печатать через другие интервалы, кроме 1, 1.1/2, 2, 3? 
 - можно. О доработке драйвера см.п.3.3.

     2.19. Почему внизу страниц вдруг появляется нумерация? 
 - При наборе нового документа по умолчанию создается Footer с номером  стра- 
ницы. Чтобы его подавить почти навсегда, вставьте в CONFIG.PAR строку  
     ML  0 

     2.20. Можно ли работать с текстом шире 80 позиций (например, 96)? 
 - Да, заменив в CONFIG.PAR строку  LL 80  на  LL 96. 

     2.21. Сколько можно создать ключевых последовательностей? 
 - Сколько угодно, зарезервировав под них место в  CONFIG.PAR  в  строке  NK,  
например, NK 70. 

     2.22. Куда пропали вчерашние ключевые последовательности? 
 - При выходе из ChiWriter изменения в Notepad, новые Key sequences и измене- 
ния в конфигурации теряются без предупреждения.  

     2.23. Почему вдруг изменилась конфигурация экрана? 
 - При операциях Read и Merge конфигурация  перестраивается  на  ту,  которая 
записана в последнем прочитанном файле. 

     2.24. Как установить желаемый цвет экрана? 
 - с помощью программ Vegainit.exe, Vegatabl.exe, Palette.exe удобно перекра- 
сить не только поле в CW, но и весь Norton Commander. Пример .BAT -  файла  с 
темно-зеленым фоном и белыми буквами для  VGA:  

VEGAINIT -V
VEGATABLE 24 Black:60  Grey:77 Red:06 Purple:02 Blue:70 Cyan:16 LightRed:26
VEGATABLE 18 Black:60 White:77 Red:06 Purple:02 Blue:70 Cyan:16 LightRed:26
VEGATABLE 26 Black:60 White:77 Red:06 Purple:02 Blue:70 Cyan:16 Lightred:26 
MODE CO80

   На монохромном дисплее  полезно подкрутить  яркость/контраст  до 
темно-серого фона и в меру ярких букв. 

     2.25. А если нет ничего для лазерного принтера? 
 - на основе любого лазерного драйвера можно  легко  изготовить  драйвер  для 
встроенных и загружаемых шрифтов Вашего лазерного принтера. Во всяком случае, 
"голые тексты" типа визиток, бланков  и  писем  печатаются  легко,  удобно  и 
вполне презентабельно. 


     3.  Как усовершенствовать режимы печати 

     Лучне всего взять один из привычных Вам драйверов и попробовать понемно- 
гу вносить в него мелкие изменения. Файл *.PRN  представляет  собой  по  сути 
дела программу, написанную на особом языке  ChiWriter'а,  где  каждая  строка 
задает те или иные режимы печати. Порядок строк в некоторой степени  произво- 
лен. Подробное описание всех параметров содержится в книге В.Фигурнова  (При- 
ложение 7), но достаточно менять лишь несколько из них.

Первые два символа в каждой строке драйвера - название команды, остальные - ее 
реализация. 

     3.1. Использование  встроенных  шрифтов  принтера 

     3.1.1. Вот важнейшие Esc - команды в том виде, в  каком  они  пишутся  в 
драйвере (файл *.PRN). Существенно различие больших и маленьких букв и  нали- 
чие пробелов между символами.  

ESC M     и   ESC P    - включение и выключение Elite 
ESC E     и   ESC F    -                        Bold  (жирный)
ESC S SOH и   ESC T    -                        Small (мелкий) 
ESC 4     и   ESC 5    -                        Italic (курсив) 
ESC x 1   и   ESC x 0  -                        NLQ (качественный) 
ESC W 1   и   ESC W 0  -                        двойной ширины букв 
ESC SI    и   DC2      -                        Condensed (уплотненный)

     3.1.2. Оптимальный вариант для принтера  со  встроенными  NLQ  шрифтами. 
Например, строки драйвера 
EXTENSION  .QFT
   .....
B+ ESC E 
B- ESC F 
   ..... 
FO  RUSSBOLD  B   N=0 
TT <таблица перекодировки - см.старое издание книги В.Фигурнова> 
   .....
+D ESC x 0 
+L ESC x 1

означают, что шрифт (FOnt) RUSSBOLD в режимах Draft и Letter (то  есть  кроме 
eNhanced:  N=0) печатается встроенным шрифтом принтера  (обозначенным  буквой 
B). Этот шрифт включаются и выключается командами  ESC E и ESC F. Качество  - 
черновое в режиме Draft (цепочка ESC x 0  в строке  +D)  и  высокое  (NLQ)  в 
Letter (строка +L). Это удобнее, чем графический режим для  Letter.  Наконец, 
в режиме  eNhanced (или Special)  печатается RUSSBOLD.QFT (по умолчанию) либо 
другой шрифт, указанный строкой типа   FO RUSSBOLD IRUSSBOL N=1. '  

     3.1.3. Цепочки можно произвольно комбинировать, и, например, при 

Z+ ESC E  ESC 4  ESC W 1 
Z- ESC F  ESC 5  ESC W 0 
FO  SCRIPT  Z

экранному SCRIPT будет соответствовать на печати жирный курсив двойной 
ширины. 

     3.1.4. При проблемах с встроенными русскими буквами  (они  есть,  но  не 
печатаются, или печатаются не те, или печатаются только маленькие) попробуйте 
в цепочку +S (инициализация принтера) включить что-либо из 

ESC 6    - печать больших русских букв (символы 128-155)
ESC t 1  - включение русского набора символов
ESC % 1  - то же
ESC m 002   - то же, основная кодировка ГОСТ 
ESC m 003   - то же, альтернативная кодировка ГОСТ 

     Бывает удобно явно отделить RUSSIAN от STANDARD, например: 

A+  ESC m 001
A-
R+  ESC m 003 
R- 
FO STANDARD A  N=0
FO RUSSIAN  R  N=0 
TT <таблица перекодировки> 

     3.1.5. На Epson FX-1050 шрифт Small лучше выглядит при 

S+  ESC SI   ESC SP  LF 
S-  ESC DC2  ESC SP  NUL 
FO  SMALL  S 

(не путайте S+ и +S)

     3.1.6. Если Вы любите многократные объемистые рукописные правки, то 
можно подавить печать специальных шрифтов (символ @ - "пустой шрифт") и 
сделать широкое правое поле: 
FO  MATHI  @   (и то же для MATHII, GREEK, LINEDRAW и др.)
+S  ESC SI 

     3.1.6. Шрифт  LINEDRAW  в  черновом  режиме  лучше  печатать  встроенной 
псевдографикой (символы 176-223 в IBM  и  альт.ГОСТ кодировках) 

     3.1.7. На хорошем  "грекофицированном"  принтере  можно  по  аналогии  с 
русской таблицей составить таблицу для встроенных греческих букв. 


     3.2.  Перекодировки  символов 

     Это едва ли не самое опасное занятие. 
     Если Вы взяли хорошую версию, то, пожалуй, единственное, что стоит  сде- 
лать, это добавить в драйвер перекодировки букв шрифта SYMBOL (где много  не- 
занятых букв) в управляющие символы принтера: 

FO  SYMBOL  ISYMBOL 
TT  @ A 000 -    A A 001 -   B A 002 - 
TT  G A 007 -    H A 008 -   I A 009 -   J A 010 -    L A 012 -
TT  N A 014 -    O A 015 -   R A 018 -   [ A ESC -

Здесь экранному шрифту SYMBOL.EFT соответствует печатный  шрифт  ISYMBOL.QFT, 
за исключением знаков, описанных в строках TT: 
нажатие "@" в шрифте SYMBOL приведет к посылке на принтер символа из шрифта A 
(см. цепочку A+ ) с десятичным кодом 000 (не путать с  цифрой  0);  "["  даст 
символ ESC (эквивалентная запись 027), буквы O и R этого шрифта  будут  вклю- 
чать и выключать режим Condensed  в любом месте текста, и т.д. Таким  образом 
можно, вставляя ESC-цепочки в любое место текста, извлечь из хорошего принтера 
все его встроенные шрифты и комбинировать их абсолютно произвольным образом. 
Буквы из приведенного примера в оригинальной версии  не  задействованы,  и  я 
дорисовал их в экранном шрифте программой Font Designer  в  виде  управляющих 
символов. 

     3.3. Доработка графических режимов принтера 

     Поскольку я не ожидаю, что это будет массовым занятием, то приведу толь- 
ко несколько фрагментов с краткими пояснениями, тем более что речь ни в  коем 
случае не идет о новых драйверах, а  только  о  доработке  готовых.  Довольно 
неприятно то, что используемые в драйвере параметры избыточны и часто конфли- 
ктуют. 
     Полные тексты драйверов приведены в приложении. 

     3.3.1. Основные параметры и их значения. 
     Взяв любой драйвер, Вы найдете там строки типа: 

ID PITCH=10 SPACE=10 DENSITY=240 MICRO=0 
 - эта строка определяет режим pIca Draft (сокращение - ID).   
PITCH и DENSITY - число знаков и точек на дюйм.  
SPACE - он равен 10 в обычном режиме;  16, если в строке +S стоит ESC SI;   и 
5, если ESC W 1.  

SCAN ROWS=27 COLS=24 HORIZ=0 MSBBOT=0 PAD=0 NBITS=8 BYTES=1 INCS=24 SCANS=4
 - буква имеет размер 27 рядов, 24 колонки и печатается в 4 прохода. 

S3  ROW=12  COL=1  START=1  END=8
 - при третьем графическом проходе буква печатается начиная с 12 ряда и с 1 
колонки, задействованы иглы с 1 по 8. 

PASS  NPASS=5  CPASS=3
P3 VERT=8  SCAN=0
 - всего 5 проходов, и при третьем (P3) печатаются встроенные буквы принтера, 
после чего бумага передвигается на 8 точек (1 точка = 1/216 дюйма - см.VMI). 
Если встроенные и графические буквы  оказались  на  разной  высоте,  то  надо 
изменить параметры VERT в строке со SCAN=0 и в предыдущей, так чтобы их сумма 
сохранилась. 

VERT LF=0 FF=1 VMI=216 MAX=127

 - Если подуровень пустой, то бумага перемещается на  VMI/12 точек. Если 
занят, то - на сумму всех VERT из строк P1, P2, ... 
     В частности, если уменьшить VMI  и  одновременно  эту  сумму,  то  можно 
получить печать через произвольно уменьшенные интервалы между  строками.  При 
VMI=108 и сумме = 9 интервал уменьшается вдвое.  Установив  Layout-  Spacing- 
Triple, получим печать через полтора обычных интервала с более изящным распо- 
ложением индексов по высоте. 

     Далее следуют фрагменты некоторых "нестандартных" драйверов - только  те 
их строки, которые отличаются от "обычных" 9-точечных, с минимальными необхо- 
димыми пояснениями. Полные тексты драйверов приведены в Приложении и на  дис- 
кете.

Строка, начинающаяся с ";" - это комментарий. 

     3.3.2. Драйвер POP.PRN - печатает узкими буквами экранными шрифтами *.SFT 
;
EXTENSION .SFT 
; 
;параметр SPACE здесь соответствует строке +S, включающей Condensed
ID PITCH=17 DENSITY=120 MICRO=0 SPAC=17
; 
VERT LF=1 FF=1 VMI=126 MAX=255
; экранный шрифт 10 x 8, сканируется и печатается в один проход 
SCAN ROWS=10 COLS=8 HORIZ=0 MSBBOT=0 PAD=1 NBITS=8 BYTES=1 INCS=12 SCANS=1
SINC ROW=1  COL=1
S1   ROW=2  COL=1 START=1 END=9
;
PASS NPASS=1 CPASS=0
; вертикальное перемещение уменьшено до 12 точек (нормально - 18) 
P1 VERT=12  SCAN=1
;
+S ESC @ ESC x 0 ESC SI 

     3.3.3. Драйвер CONDENSED.PRN - сочетание встроенных шрифтов Condensed  с 
экранными  *.SFT. Поддерживаются режимы печати:
   1. Draft:  STANDARD, BOLD, UNDERLIN, ITALIC, SMALL,
              RUSSIAN, RUSSBOLD, RUSSUNDR, RUSSITAL, LINEDRAW и FOREIGN
             - Condensed шpифты принтера, остальные - в графическом режиме.
   2. Letter, Special: 
                все печатаются в графическом режиме - *.sft
;
EXTENSION .SFT
;
; STANDARD 
A+ 
A-
; RUSSIAN 
R+ ESC m 003
R- 
    ..........
FO STANDARD A        D=1
    ..........
FO RUSSIAN  R        D=1
TT <таблица перекодировки>
;  аналогично описываются другие шрифты
ID PITCH=17 DENSITY=120 MICRO=0 SPAC=17
    ........
VERT LF=0 FF=1 VMI=108 MAX=255
;
<строки SCAN,  SINC,  S1 - как в драйвере pop.prn> 
;
PASS NPASS=2 CPASS=1
P1 VERT=0 SCAN=0
P2 VERT=9 SCAN=1
  ......
+S ESC @ ESC x 0 ESC SI 


     3.3.4. Драйвер DRAFT.PRN - текст нормальной ширины, быстрая печать. 
Используются автоматически перемасштабируемые (Scaling font.  Please 
wait...) обычные печатные шрифты *.QFT или другие. Скорость за счет качества. 
; 
EXTENSION .QFT
  .........
;  Следующие строки (или им подобные) нужны, если экранные и печатные  шрифты 
;  называются по-разному (STANDARD.EFT и ISTANDRD.QFT и т.п.)  
FO STANDARD ISTANDRD  
FO BOLD     IBOLD     
   ...........
ID PITCH=10 DENSITY=120 MICRO=0 SPAC=10
   .........
VERT LF=0 FF=1 VMI=216 MAX=255
; Параметры COLS и INCS здесь 12 - ширина буквы в точках (как pIca)
; Если качество очень плохое, попробуйте заменить ROWS с 8 на 7, 9, или 10. 
SCAN ROWS=8 COLS=12 HORIZ=0 MSBBOT=0 PAD=1 NBITS=8 BYTES=1 INCS=12 SCANS=1
SINC ROW=1  COL=1
; Печать в один проход. 
S1   ROW=1  COL=1 START=1 END=8
;
PASS NPASS=1 CPASS=0
P1 VERT=18 SCAN=1
     .........


     3.3.5. Драйвер "для стендов" с увеличением в 1.5 раза. Шрифты могут быть 
любых названий и размеров. Если Вы хотите  написать  драйвер  с  произвольным 
увеличением, попробуйте изменить в желаемой пропорции только параметры  одной 
строки SCAN:  ROWS, COLS, INCS, SCANS и допишите по образцу сколько надо строк 
S5, S6, S7, ..., P5, P6, P7, .... 
; 
EXTENSION .QFT
;  <если надо - вставьте строки  FO - см. комментарий в п.3.3.4>
ID PITCH=8  SPACE=10  DENSITY=240  MICRO=0
    ..........
VERT LF=0 FF=1 VMI=216 MAX=127
; Для сравнения приведены параметры строки SCAN "обычного" драйвера
; Было    27      24                                             24       4 
SCAN ROWS=40 COLS=36 HORIZ=0 MSBBOT=0 PAD=0 NBITS=8 BYTES=1 INCS=36 SCANS=4 
SINC ROW=2  COL=1
; при первом проходе печатаются ряды   7, 9, .... 21. 
; при втором -                          8, 10,  ...22 и т.д.  
; (первые ряды - пустые и не сканируются) 
S1   ROW=7  COL=1 START=1 END=8
S2   ROW=8  COL=1 START=1 END=8
S3   ROW=23 COL=1 START=1 END=8
S4   ROW=24 COL=1 START=1 END=8
;
PASS NPASS=4 CPASS=0
; параметры  VERT  подбираются экспериментально
P1 VERT=1  SCAN=1
P2 VERT=23 SCAN=2
P3 VERT=1  SCAN=3
P4 VERT=0  SCAN=4
; 

     Этим далеко не исчерпываются возможности  модификации  драйверов.  Часто 
при возникновении какой-то конкретной печатной задачи я делаю изменения "на 
ходу", а по завершении работы спокойно удаляю "одноразовый драйвер". 

     Я буду считать свою цель достигнутой, если Вы нашли здесь что-либо поле- 
зное, отвечающее Вашим потребностям и возможностям, или если мне удалось убе- 
дить Вас, что связанные с  этим  редактором  страхи  несколько  преувеличены. 
Культурно сделанная версия - это простой, компактный, удобный и надежный  ин- 
струмент для небольшого компьютера. Добавим, что существует программа перево- 
да текстов ChiWriter'а в формат издательской системы T X.  

     Я искренне благодарен П.А.Брауну и А.Коломийцеву за разностороннюю  под- 
держку. 

Возврат на мою страничку: www.fr.spb.ru/da/index.htm