Похоже, решив изменить формат файлов документов в Word 97, Microsoft никак не рассчитывала, что столкнется с довольно резкой реакцией пользователей своих офисных систем. Речь идет в первую очередь о проблемах с преобразованием файлов Word 97 в формат Word 6.0/95. Суть вопроса заключается в том, что предыдущие версии Word (причем чаще всего 6.0) продолжают оставаться сегодня самыми распространенными текстовыми редакторами, особенно среди корпоративных пользователей, многие из которых по-прежнему работают в среде Windows 3.x. Но при этом почти все уже столкнулись с необходимостью работы с документами Word 97, получая их от внешних источников (например, через Internet от той же Microsoft).

 

Наличие этой проблемы однозначно признается в опубликованном в начале нынешнего лета открытом письме Ричарда Фейда, вице-президента отделения настольных приложений Microsoft, адресованного пользователям MS Office 97. На данный момент, похоже, официальные представители Microsoft считают, что вопрос совместимости документов Word различных версий уже решен. Однако опыт автора (в том числе специально проведенные тестовые испытания, результаты которых в целом подтверждаются и другими пользователями MS Word) показал, что имеющиеся конвертеры для Word 6.0/95 и 97 работают очень неустойчиво.

 

Как  определить  версию  документа

 

Расширение формата документов по мере роста их функциональности вполне естественно. Однако крайне желательно, чтобы и разработчики учитывали этот процесс и, например, производили некоторое модульное наращивание формата, при котором старая версия программы могла бы прочитать только понятные ей данные, игнорируя нововведения. Самое простое  -  прочитать хотя бы текст без форматирования и графики.

 

В любом случае пользователь должен понимать, с файлом какого формата он имеет дело. Именно это и нельзя было сделать в Word 6.0/95: попытки прочитать файлы с привычным расширением .DOC неожиданно заканчивались сообщением о том, что это не документ Word, и предложением прочитать его как “просто текст”.

 

СОВЕТ. Узнать версию документа Word можно, выполнив в режиме двоичного просмотра файла (например, при работе в Norton Commander, нажав F3) операцию контекстного поиска (F7) строки Word.Document,  -  цифра, следующая за ним, и является этим номером (пакеты Office 95 и 97 имеют номера версий 7 и 8 соответственно).

 

Чтение  документов Word  97  в  Word  6.0/95

 

На самом деле конвертер для чтения документов нового формата в пакетах Word 6.0/95 появился еще в ноябре 1996 г. одновременно с выпуском Office 97. Но проблема заключалась в том, что большинство пользователей старых версий об этом просто не знало, а Microsoft почему-то и не пыталась громко объявить об этом.

 

В этой связи надо отметить, что зачастую ссылка представителей Microsoft (сейчас речь идет уже о российском филиале) на то, что “эта информация имеется на нашем Web-узле”, очень напоминает простую отговорку. Во-первых, возможность доступа к Internet в нашей стране имеют далеко не все пользователи ПК (тем более не все могут скачать файлы размером более 500 Кб). Во-вторых, найти нужную информацию на огромном Web-узле корпорации довольно непросто даже для опытного пользователя, особенно в режиме “найди то, не знаю что”.

 

Однако главная проблема состоит в том, что этот конвертер отказывается преобразовывать файлы даже относительно небольших размеров. Например, мои попытки прочитать с его помощью в среде Word 6.0 (Windows 95) файлы Word 97 объемом свыше 60 Кб (без каких-либо изысков: обыкновенный текст с форматированием абзацев, к тому же автор этих документов  -  сама Microsoft) регулярно заканчиваются появлением сообщения о нехватке памяти  -  Out of Memory. И это на компьютере Pentium-75 с 16 Мб ОЗУ, хотя рекомендуемый объем для Word 6.0 составляет 8 Мб.

 

 Преобразование  в  среде  Word  97

 

Удивительно, что в момент выпуска Word 97 разработчики не предоставили пользователям прямого конвертера в формат Word 6.0/95. Вернее, такая позиция в окне выбора формата вывода была, но в результате создавался файл RTF.

 

В принципе, пользователю нет особого дела до внутреннего формата файла (RTF или Word 6.0), но проблема заключалась в том, что хотя RTF-файлы создавались вроде бы успешно, но читались в среде Word 6.0 далеко не всегда. Например, в моем случае трудности возникали уже с файлами объемом 300 Кб (также довольно простые справочные документы Micrоsoft): Word 6.0 выдавал сообщение о нелегальной операции, что порою сопровождалось еще и зависанием компьютера. Как это ни странно, но наиболее приемлемым вариантом передачи из Word 97 в Word 6.0 оказалось использование в качестве промежуточного формата Word 2.0.

 

Настоящий конвертер вывода документов в формате Word 6.0/95 для Word 97 появился лишь восемь месяцев спустя, в июне 1997 г. В этой ситуации было довольно забавно читать в пресс-релизе Microsoft о внимании корпорации к проблемам пользователей, в частности в отношении совместимости файлов. Но работа с этим конвертером показала, что ситуация с преобразованием форматов осталась неизменной: при попытке сохранить в Word 97 файл размером порядка 300 Кб в формате Word 6.0/95 опять выдавалось сообщение Out of Memory (такая же ситуация зафиксирована и при работе на компьютере с 32 Мб оперативной памяти).

 

Кроме того, настораживает тот факт, что в ходе последовательного преобразования различными способами одного и того же документа из формата Word 97 в 6.0/95 и наоборот результирующие файлы (одинакового формата, конечно же) постоянно меняют свои размеры.

 

Размеры  файлов

 

Очень неприятна отчетливая тенденция к росту объема файлов при хранении одних и тех же данных. Порою создается впечатление, что разработчики современного ПО озабочены проблемой заполнения быстро падающей в цене дисковой памяти. Когда пять-шесть лет назад обозначилась проблема дефицита внешней памяти, разработчики без особых проблем перешли к автоматической компрессии данных, в первую очередь для исполняемых файлов. Но технологические трудности тех лет, препятствующие увеличению объема жестких дисков, были успешно преодолены, и, похоже, при использовании памяти сегодня главным лозунгом является “патронов не жалеть”.

 

Вполне приемлемой можно считать 50%-ную эффективность сжатия с помощью относительно простых и быстрых алгоритмов (программ типа PKZIP). Но превышение этого значения должно заставить подумать об оптимальности выбранного формата файлов.

 

Формат файлов Word для Windows никогда не отличался компактностью: даже для простых текстовых документов Word 6.0 эффективность сжатия не опускалась ниже 60 - 65% и резко возрастала при включении в документы графической информации. И это при том, что для файлов последовательной структуры даже простое использование записей переменной длины (для служебной информации) может существенно сократить затраты памяти.

 

В этой связи заявление Microsoft о включении в Office 97 специального механизма компрессии прозвучало хотя и запоздавшим, но все же приятным сообщением. Однако на практике ситуация предстала несколько иначе: имея дело с довольно большим числом различных документов Word, я каждый раз обнаруживал, что размеры файлов в формате Word 97 на 20 - 25% превышали аналогичные в Word 6.0/95, а эффективность их сжатия повышалась до 70 - 75%.

 

Но эти цифры относятся к англоязычным документам  -  для русских текстов размер файла увеличивался как минимум в 2 раза, а коэффициент сжатия регулярно превышал 80%. Объяснение этому простое  -  переход на двухбайтовую кодировку символов UNICODE. Но только непонятно, зачем использовать такой неэффективный способ хранения данных на жестком диске, при котором половина файла занята байтом со значением 04?

 

В завершение темы эффективности форматов хранения данных в документах Word хотелось бы привести такие цифры. Запись документа Word 97 объемом около 50 Кб занимает не менее 5 с (Pentium-75, 16 Мб ОЗУ), архивация же такого файла утилитой PKZIP в режиме DOS (чтение исходного файла, сжатие, запись на диск) выполняется за 1 - 2 с.

 

Проблемы  с  HTML-форматами

 

Создается впечатление, что проблемы преобразования форматов касаются не только совместимости Word 6.0/95 и 97. Похоже, не менее удивительные вещи происходят и при работе с HTML-файлами. Первой неожиданностью было уже то, что загрузка простой странички (3 - 5 Кб), выполняемая в Internet Explorer практически мгновенно, требовала от Word 97 напряженной работы в течение 5 - 7 с. Кроме того, я уже несколько раз сталкивался с ситуацией, когда загруженная в Word 97 HTML-страница принимала совсем другой образ, чем в среде браузера. Например, простой текст превращался в таблицу, причем довольно необычной структуры.

 

А недавно, работая с файлом описания NTSP3.HTM (на компакт-диске Microsoft Service Pack 3 для Windows NT 4.0), Word 97 вообще отказался выполнить его преобразование, прочитав только половину содержимого.

 

Наличие ошибок в программах является делом довольно обычным. Но именно поэтому так важна готовность разработчика быстро реагировать на них. К сожалению, попытки автора обсудить затронутые в этой статье вопросы с представителями российского отделения Microsoft и ее службой технической поддержки не увенчались успехом.           4

 

Если у читателей возникнет желание поделиться опытом работы в среде Office 97  -  напишите автору по адресу: akolesov@glasnet.ru.

 

Андрей Колесов

 

“Реакция клиентов показала, что изменение файлового формата в Office 97 существенно затрудняет работу с документами для пользователей предыдущих версий. Мы приносим извинения за эти неудобства. Примите наши заверения в том, что мы со всей серьезностью относимся к подобной критике, а упрощение перехода к новой версии рассматриваем как приоритетное направление нашей работы”.

 

Из открытого письма Ричарда Фейда

Версия для печати