Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Электронный офис в Linux
SpyLOG

Офис для пингвина

Автор: Петр Семилетов, roxton@chat.ru
Опубликовано: 17.3.2003


2002, Издательский дом "КОМПЬЮТЕРРА" | http://www.computerra.ru/
Журнал "СОФТЕРРА" | http://www.softerra.ru/
Этот материал Вы всегда сможете найти по его постоянному адресу: http://www.softerra.ru/freeos/25011/

Когда вы устанавливаете Windows, то получаете в ее комплекте два текстовых редактора - знаменитый Блокнот и Wordpad. А вот после инсталляции Linux выясняется, что вместе с ним совершенно бесплатно идут целых два пакета офисных программ - не пробные, ограниченные во времени версии, а полноценные "офисы".

KOffice

Этот пакет прилагается к графической оболочке KDE. Напомню, что ядро системы Linux отделено от графического интерфейса, что дает пользователю возможность выбрать последний по вкусу - это может быть футуристичная оболочка Enlightenment с ее морскими волнами, плещущимися внизу рабочего стола, строгий и стильный Gnome с масштабируемыми иконками, которые можно растягивать хоть на весь экран, минималистический BlackBox или функциональный KDE, умеющий маскироваться под внешний вид любой системы - от Windows до MacOS [1].

Для нормального функционирования KOffice достаточно поставить на компьютеры Linux и KDE со всеми сопутствующими ей утилитами.

1
Рисунок 1. Рабочий стол Koffice

В состав KOffice входит восемь программ. Основной справедливо можно считать текстовый редактор KWord. На первый взгляд может показаться, что это старый добрый MS Word, только облегченный за счет редко используемых функций. Вы можете редактировать текст, форматировать его, использовать гибкий механизм стилей [2], делать врезки, вставлять ссылки, таблицы, сноски, поля переменного текста (вроде номера страницы или текущего времени), комментарии. Поддерживается также вставка объектов, созданных в других приложениях пакета KOffice.

2
Рисунок 2. Окно настроек KWord

Разумеется, KWord умеет проверять орфографию. Правда, не сам, а при помощи внешних утилит ISpell либо Aspell, которые можно найти в любом дистрибутиве Linux. Впрочем, пользователь даже не заметит, что вызывается какая-то посторонняя утилита, не входящая в штатные средства офисного пакета - таков Linux, разные части которого тесно интегрируются друг с другом.

Из встроенных в KWord средств нужно еще упомянуть автодополнение и автоисправление (аналог "вордовского" автоформата). А к числу приятных особенностей продукта я бы отнес палитру для раскраски текста (именно такой больше нигде нет) и возможность сканирования изображений прямо из редактора.

О поддерживаемых форматах. Во-первых, это родной для KWord формат, имеющий расширение kwd. Kwd-файлы представляют собой хитрую штуку. Технически это обыкновенный ZIP-архив, только с другим расширением. В нем содержатся два компонента: маленькая png-картинка для предпросмотра документа, а также два XML-файла, один из которых несет информацию о документе (кто автор и т.д.), а другой, maindoc.xml - собственно текст.

Таким образом, родной формат KWord - XML. Кроме этого, редактор умеет работать с обычными текстовыми файлами, RTF, MS Word, WordPerfect, TeX, HTML, AbiWord и еще несколькими малоизвестными форматами.

Зачем пингвину XML?

Форматы файлов и KOffice, и OpenOffice базируются на технологии XML. Я не буду вдаваться в технические подробности, ограничусь простой метафорой. Представьте себе дерево с ветвями. На каждой ветке могут быть другие ветки, но могут также сидеть птицы, причем разные - воробьи, малиновки, дрозды и прочие пернатые. XML-документ представляет собой такое дерево. Только "ветки" называются в нем узлами, и каждый узел может хранить в себе как другие узлы, так и некую информацию - текст, числа, даты. Более того, отображающая XML-документ программа может по-разному выводить информацию, хранящуюся в узле, в зависимости от названия узла. Например, узел называется bold. Текст, хранящийся в этом узле, будет выведен на экран жирным шрифтом. Вот таким образом текстовые редакторы хранят в XML-файлах данные о форматировании текста. Практически это выглядит примерно так же, как тэги HTML: открывающий тэг, потом закрывающий, а все, что между ними - информация, хранящаяся в узле.

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

Совместимость линуксовых "офисов" с MS Office волнует многих. Противники Linux иногда любят покидать камни - мол, линуксовые программы плохо читают те же DOC-файлы. По моему опыту, KWord вполне пристойно справляется с файлами от MS Word - по крайней мере с обычными, не содержащими макросов и прочих чудес инженерной мысли. А вот что касается обратного - поддержки документов KWord в Windows - с этим дело обстоит туго. Остается пользоваться форматом plain-text (обычный текст), который не поймет разве что машина Чарльза Бэббиджа.

Посмотрим теперь на некоторые другие программы из состава KOffice. KSpread - табличный процессор, оставляющий двойственное впечатление в плане поддержки Excel. Простые документы, с примитивными формулами, KSpread открывает нормально. Однако при попытке открыть два прайс-листа с кучей скриптов и формул начались чудеса: KSpread на долгое время задумался, после чего вылетел. Это не значит, что Kspread - плохой табличный процессор. В общем-то, он не обязан понимать формат MS Excel. Но факт остается фактом: чтение листов из Excel поддерживается в KSpread лишь частично, а вот экспорта в них вообще нет [3].

Ежели не говорить о совместимости с Excel, то KSpread выглядит довольно убедительно. Мне очень понравился мастер вставки функций, который совмещен со справочником: выбираете в списке функцию, а рядом выводится ее подробное описание с примерами. Помимо стандартных формул, в KSpread есть такие любопытные возможности, как форматирование ячеек по условию (например, выделенные ячейки со значениями в таком-то диапазоне можно автоматически маркировать другими цветом и шрифтом), поиск текста с нечетко заданными параметрами (когда вы не знаете или забыли, как точно пишется то, что вы хотите найти). Еще одна уникальная штука - вы можете сами писать и добавлять новые функции с помощью скриптового языка формул KoScript.

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

Karbon - очень простой редактор векторной графики. Сразу скажу, что это отнюдь не конкурент CorelDraw или Flash MX, однако нарисовать какую-нибудь иллюстрацию для документа того же KWord вполне реально. Можете распоряжаться графическими примитивами (эллипс, прямоугольник, спираль и т.д.), заливать их цветом или градиентом, группировать, упорядочивать по уровням, преобразовывать в кривые.

В состав KOffice входит еще один векторный редактор - Kontour. Он умеет работать со слоями, поддерживает ввод текста, объекты могут иметь разную степень прозрачности - словом, это уже серьезный инструмент. Однако в связи с внутренними изменениями проекта KOffice в следующих дистрибутивах Kontour уже не появится. Его разработка прекращена, а роль основного редактора векторной графики будет играть Karbon, на который и направлены теперь усилия разработчиков.

KPresenter продолжает список графических программ в KOffice. Ближайший его аналог в мире Windows - MS PowerPoint. Как вы уже догадались, KPresenter предназначен для создания презентаций. Более чем интуитивен и эргономичен. Имеет встроенный редактор текста и векторной графики, а также может отображать данные из других приложений KOffice. Кроме всего прочего, KPresenter "понимает" формат PowerPoint, а еще умеет экспортировать слайд-шоу в HTML-формат, преобразовывая при этом векторные изображения в растровые.

Завершая обзор KOffice, упомяну еще о двух утилитах. KChart - это редактор диаграмм, который вряд ли найдет применение как самостоятельная программа, но при работе с диаграммами в KSpread просто незаменим. KFormula предназначается для работы с математическими формулами и, опять же, по большей части нужна для интеграции формул с текстом в KWord.

OpenOffice.org

Проект это несомненно более крупный, нежели Koffice - хотя бы потому, что поддерживается корпорацией Sun, одним из основных конкурентов Microsoft. Как известно, Sun выпускает офисный пакет StarOffice. Связь между OpenOffice.org и StarOffice примерно такая же, как между браузерами Mozilla и Netscape, то есть ОО представляет собой бесплатный продукт с открытым кодом на основе коммерческого StarOffice.

OpenOffice.org существует в версиях для множества платформ, от Linux до MacOS X и Windows. Я буду говорить именно о Linux-версии. Лично я пришел к использованию ОО далеко не сразу, потому что с ним имелись проблемы. У меня установлен Linux Mandrake, в котором некоторые программы (в том числе и ОО) локализованы весьма странным образом: вместо русских букв в меню и диалоговых окнах - одни квадратики. Локаль стоит правильная, просто в некоем конфигурационном файле прописан не тот шрифт. Именно поэтому ОО долгое время не был мною востребован. Замечу, что в российских дистрибутивах, таких как ALT Linux или ASP Linux такой проблемы с локализацией нет. Через некоторое время я снова решил поставить ОО, отказавшись от русского интерфейса вообще. На сей раз квадратиков, разумеется, не было. Зато было ощущение, что попал в сказку, и теперь все тексты пишу только в ОО.

Текстовый редактор в ОО называется Writer. Сразу бросается в глаза более корректное, нежели у KWord, распознавание формата MS Word. Если KWord игнорировал размеры полей, то Writer их успешно понимает. Проблем с совместимостью быть не должно, даже если "доковский" файл содержит в себе VB-макросы, потому что Writer их загружает и, хотя не выполняет, однако записывает обратно в файл при его сохранении. Более того, Writer славится свои умением открывать испорченные по каким-либо причинам DOC-файлы (на которых Word попросту вылетает).

3
Рисунок 3. Текстовый процессор OpenOffice.org Writer

4
Рисунок 4. Writer в рабочей среде Enlightenment

Однако не это главное. В каком еще редакторе вы встретите поддержку OpenGL? Только во Writer. А зачем текстовому редактору графика OpenGL? Для ускорения прорисовки вставленных в документ изображений, разумеется. В поставку ОО входит целая галерея, разбитая на рубрики - трехмерные эффекты, фоны для страниц, всякие значки, кнопочки и прочее. Кроме этого в галерее находятся звуки, которые тоже можно "имплантировать" в документ.

Графические навороты не исчерпываются OpenGL. В ОО реализован масштабируемый интерфейс. То есть вам не нужно задавать размер шрифтов, кнопок на тулбарах и т. п. - вы просто указываете масштаб в процентах, и все размеры подгоняются под него. Масштаб интерфейса не оказывает влияние на размеры шрифтов, которые вы используете в редактируемом тексте.

Перечислю еще некоторые любопытные возможности Writer. Печатать можно не только на принтер, но и в файл, причем поддерживается формат PDF. В Windows для этих целей мне приходилось устанавливать какой-нибудь виртуальный принтер, а тут он уже встроен. Имеется уникальный движок автодополнения текста. Когда вы набираете текст, Writer запоминает введенные вами слова. И если вы потом снова начинаете набирать уже запомненное программой слово, Writer предлагает вам автоматически завершить его, подсвечивая красным доступные варианты прямо в набираемой строке. Если вы жмете "Enter", слово автоматически завершается. Скорость набора текста возрастает ощутимо, поскольку не нужно вручную печатать длинные слова вроде "соответствующий" или "квалификационная".

Функциональность Writer расширяется за счет скриптов на встроенном языке OpenOffice.org Basic, плагинов и Java-апплетов (недаром же Sun разработала Java). Writer, как и весь ОО, очень гибок в настройках - вы можете подключать к нему дополнительные словари, фильтры импорта/экспорта файлов, различные внешние программы (браузеры, почтовые клиенты и т.д.).

OpenOffice.org Calc - табличный процессор, без проблем открывший тот самый зубодробильный лист Excel, на котором после долгих размышлений вылетел KSpread. Чтобы не быть занудным и не описывать очевидное, расскажу об особенностях Calc, а базовые его возможности опишу двумя словами - "как Excel".

Текст в ячейках может быть под каким угодно углом - для поворота надо вращать специальный регулятор, похожий на ручку громкости на звуковых колонках. Чем еще может удивить Calc? Уже стандартной для ОО распечаткой в файл PDF или PostScript [4]. Менеджментом стилей для ячеек. Функциями сравнения двух документов - чтобы определить различия между ними. Очень интуитивным созданием и редактированием диаграмм, от двумерных до трехмерных - причем с наложением текстур и вращением в реальном времени.

OpenOffice.org Impress - это программа для создания презентаций. Разумеется, полный арсенал средств: динамические переходы между слайдами (Transitions, как в Adobe Premiere), векторные объекты, трехмерные эффекты, эффекты анимации для текста и картинок, экспорт презентации в HTML и формат Power Point [5], максимально полная интеграция с другими продуктами ОО. Потрясающая по простоте работа с графикой: всего парой щелчков мыши можно трансформировать обычную 2D-картинку в трехмерный объект, после чего всячески его вращать и масштабировать. Разумеется, ОО не претендует на то, чтобы быть средой для 3D-графики, но трехмерные объекты не уступают созданным в той же 3D Studio с точки зрения присущих им атрибутов - текстур, камер, источников освещения, режимов закраски и т. п.

Функции работы с графикой, воплощенные в OpenOffice.org Impress, достались и OpenOffice.org Draw. Это некий гибрид редактора векторной, трехмерной и растровой графики, большим плюсом которого является продуманность интерфейса. С поразительной легкостью вы можете конвертировать объекты одного типа в другой, группировать и аранжировать их.

5
Рисунок 5. OpenOffice.org Draw в рабочей среде Gnome

В ОО входит еще одна программа, но ее целесообразно использовать лишь совместно с текстовым или табличным процессором. Речь идет об OpenOffice.org Math - утилите для работы с математическими формулами. Между KOffice KFormula и Math имеется большее отличие. Первая является WYSIWYG - в ней вы визуально проектируете формулы. Во второй же надо писать их в привычном программистам формате, а Math будет конвертировать выражения в стандартную математическую "нотацию". Например, вы набираете sum(20), а получаете знак суммы в виде греческой буквы сигма и после нее двадцатку в скобках. Очень удобно, поскольку упрощается перенос частей работающих алгоритмов в стандартного вида математические формулы.

***

Оба офисных пакета хороши, просто выступают они в несколько разных весовых категориях - OpenOffice.org ощутимо тяжелее, и функций у него больше. Поэтому если перед вами стоит вопрос, какой бесплатный офисный пакет выбрать, то руководствоваться надо лишь вашими потребностями, да еще возможностями "железа". Скажем, у ОО требования к ресурсам компьютера больше, нежели у KOffice. Однако KOffice привязан к KDE, а некоторые предпочитают вообще не устанавливать KDE, используя другую рабочую среду - например, Gnome или FluxBox. В этом случае имеет смысл использовать OpenOffice.org, который не так сильно зависит от среды (недаром он работает и на Windows, и на Mac). Для слабых систем я бы рекомендовал, как ни парадоксально, прожорливый OpenOffice.org. Почему? Да потому, что если не работать в тяжеловесном KDE, то связка легкого FluxBox и OpenOffice.org будет быстрее и эффективнее.


[1] - Лично я предпочитаю именно KDE.
[обратно к тексту]

[2] - Например, можно создать стиль на основе выделенного фрагмента.
[обратно к тексту]

[3] - По крайней мере, в версии 1.2, которая у меня установлена.
[обратно к тексту]

[4] - Кстати, это умеют и программы из состава KOffice.
[обратно к тексту]

[5] - Жаль только, что нельзя делать экспорт сразу в AVI.
[обратно к тексту]