Скачать конвертер (62 KB, ZIP archive)
0. Общие замечания
1. Что программа делает
2. Что программа умеет и чего не умеет
2.1. Что программа умеет
2.2. Чего программа не умеет
3. Описание шрифтов
3.1. Общие замечания
3.2. Описание формата файлов *.WIN
4. Комплект поставки
5. Разное
0.1. Программа писалась для себя. Этим объясняются убогость диагностики и скудость комментариев в исходном тексте. C'est la vie.
0.2. Как все кайрайтерное, программа требует муторной настройки на шрифты. Cоветую не лениться: даже если в полученной Вами пачке файлов есть описания для шрифтов с Вашими именами - проверить еще раз, те ли это шрифты. В шрифтах от ChiWriter стандартности столько же, сколько в осколках от чашки: если не от одной и той же - никогда не подойдут, как бы похожи ни были.
0.3. Программа делалась для применения в конкретной задаче: перевод в приличный вид очень большого массива текстов по лингвистике. Отсюда - внимание к текстовому оформлению и небрежная работа со сложными индексами. Это несложно исправить; желающие - читайте исходный код.
0.4. Все замечания, предложения и т.п. просьба направлять мне - Николаю Григорьеву по адресу grig@iitp.ru. Вправду, не стесняйтесь, обращайтесь - буду рад. Ну а если кто-то вдруг решится добавить недостающие функции (обработку таблиц, составных символов и т.п.) - большая просьба поделиться исходным текстом.
0.5. (disclaimer). Вот Вам программа, вот Вам текст, делайте со всем этим что хотите. Но если что-нибудь случится - я не виноват! Единственная просьба: будете кому-нибудь ее давать - обязательно отдайте исходный текст и эту вот инструкцию.
Программа по мере сил переводит файлы из формата ChiWriter 3.1* в формат RTF (в варианте Word 6.0 / Word 95 / Word 97). У командной строки - два аргумента: имя файла ChiWriter (обязательный) и имя выходного файла (необязательный). Никакого расширения по умолчанию для входного имени нет, так что расширение тоже надо указывать. Если имя выходного файла не задано, то оно делается из имени входного заменой его расширения на .RTF.
Для работы программы сам ChiWriter не нужен, но нужно описание используемых ChiWriter'ных шрифтов. Как его составить и куда положить - см. п. 3.
2. Что программа умеет и чего не умеет
2.1. Программа умеет:
2.2. Программа не умеет:
(Самым правильным путем решения этих проблем будет написать
макрос на Word Basic, который будет отыскивать выражения в этих
специальных скобках и заменять их на то, что нужно. Написать его,
ей-богу, несложно, но для моих текстов это не нужно, поэтому мне
и недосуг.)
| FONT=<имя шрифта Windows> [, <номер набора символов>] |
В Word 6.0/95 можно было не указывать номер набора для шрифтов типа Arial Cyr (т.е. определенных через Font Substitutes). К сожалению, Word 97 в этом месте содержит ошибку (игнорирует Font Substitutes), и обойтись без явного указания charset не удается. Поэтому рекомендуется приписывать 204 ко всем именам русских шрифтов.
|
ATTR=none ATTR=Bold ATTR=Italic ATTR=Underline ATTR=Shadow ATTR=Outline ATTR=Strike |
| SIZE=<кегль шрифта Windows> |
| INDEX_SIZE=<кегль шрифта Windows> |
| DEFSYMBOL=<символ> |
Любая строка, не начинающаяся со знака комментария или ключевого слова-параметра, считается относящейся к таблице перекодировки. В ней должно быть записано одна или несколько пар перекодировки. Пара состоит из входного символа (того, который в ChiWriter) и выходного символа. Входной символ задается сам собой. Выходной можно написать либо прямо, либо в виде кода. Код должен содержать ровно три цифры, интерпретируемые как десятичное число (так, как это принято в файле описания принтера для ChiWriter). Есть также два специальных символа - пробел (SP или SPACE) и неразрывный пробел (NBSP или NONBREAK-SPACE).
Способ интерпретации файла описания следующий:
Рекомендуется посмотреть, как сделаны файлы STANDARD.WIN (обычный латинский шрифт), BOLD__R.WIN (полужирная кириллица) и MATH.WIN (спецсимволы); многое станет ясно. Полезно также глянуть (и, если надо, переделать) LACKING.WIN.
Просматривать и редактировать эти файлы проще под Windows - через Notepad (Блокнот): под DOS'ом таблица перекодировки кириллицы читается с трудом, а под Windows имеет вполне прозрачную структуру. Кроме того, опыт показывает, что при составлении новых описаний приходится часто лазить в Character Map (Таблицу Символов).
В архиве Chi2Word.zip содержатся следующие файлы:
5.1. Если Вам часто приходится перекодировать файлы и Вы составили приличное описание Ваших шрифтов, то под Windows 95/NT 4.0 удобно бывает добавить конвертирование в контекстное меню Explorer (Проводника) для файлов ChiWriter, так чтобы вызывать конвертер правой кнопкой мышки. Те, кто не знает, как это делается - могут спросить у меня.
5.2. Программа написана на чистейшем С и откомпилирована Visual C++ 5.0 как консольное приложение Win32. Страдальцы, сидящие на 286 машинах под DOS, могут перекомпилировать его в Turbo C 2.0 (на котором эта программа во время оно и была создана): работать будет, я проверял. Не забудьте только раскомментировать #include <alloc.h>.