23 мая 2012 года

Уменьшаем размер документов Word

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

Автор: Петр Каньковски | Раздел:  | Дата: 02 сентября 2004 года

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

Сначала разберемся, почему два совершенно одинаковых файла в формате doc могут иметь разный размер. Дело в том, что документ Word хранится в виде так называемого структурированного хранилища OLE (structured storage). Doc-файл содержит самую разнообразную информацию: текст документа, данные форматирования, макросы, описание документа, таблицу стилей и многое другое. Внутри каждого документа Word находится что-то вроде "маленьких файлов". Они называются потоками, и в них-то и размещаются разные виды информации. Потоки объединяются в хранилища (что-то вроде папок или каталогов), и вместе они образуют сложную древовидную структуру, напоминающую файловую систему. Эта структура записывается в каждый doc-файл.

Структурированные хранилища помогают программистам собрать в один файл массу разнородной информации. Но у них есть один серьезный недостаток: хранилища подвержены фрагментации, и между полезными данными часто находится "мусор" (обрывки старых текстов и случайные байты с диска). Особенно много такого мусора будет оставаться в файлах, если включить режим "Сервис > Параметры > Сохранение > Разрешить быстрое сохранение". Когда этот режим установлен, Word оставляет основное содержимое файла нетронутым, а все изменения записывает отдельно от основного текста. Если вы хотите сократить размер doc-файлов, этот режим следует выключить.

Режим быстрого сохранения
Режим быстрого сохранения

Размер файлов, сохраненных в Word 97, почти всегда меньше, чем в последних версиях Word. Установите на свой компьютер две версии Word, и когда вам нужно будет уменьшить doc-файл, откройте его в Word 97, внесите незначительные изменения (например, наберите пробел и удалите его) и сохраните. Иногда файл становится еще меньше, если сохранить его сначала в Word 97, а затем - в Word 2000 или 2003.

Есть и более простой способ. Сохраните doc-файл в формате RTF, а затем снова в DOC. В результате, размер файла может уменьшиться на 10-50%. Однако если в исходном doc-файле содержались макросы, они будут потеряны.

После сохранения в RTF и doc
После сохранения в RTF и doc

Можно написать простой макрос, который будет сохранять текущий документ сначала в RTF под тем же именем, затем в формате DOC.

Sub CompressDocFile()
ActiveDocument.SaveAs FileFormat:=wdFormatRTF
ActiveDocument.SaveAs FileFormat:=wdFormatDocument
End Sub

Откройте редактор Visual Basic, нажав Alt+F11. Создайте новый модуль (Insert > Module) и вставьте в него исходный текст макроса. Затем создайте пункт меню или кнопку, которая будет вызывать макрос. Для этого откройте окно "Сервис > Настройка > Команды", выберите в левом списке пункт "Макросы" и перетащите макрос CompressDocFile на панель инструментов.

Share
/  iBusiness