Опубликован: 22.06.2005 | Уровень: для всех | Доступ: платный | ВУЗ: Компания IBM
Лекция 17:

Прикладные программы

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >

Офисные программы

Важной частью современной рабочей станции являются так называемые офисные средства обработки информации. Под офисными приложениями обычно понимают стандартный набор из словарного процессора, средства работы с электронными таблицами, средства создания презентаций, средства для работы с базами данных. Все перечисленные офисные приложения входят в пакет OpenOffice.org – это свободный набор офисных программ, не уступающий по возможностям несвободному Microsoft Office, а кое в чем даже превосходящий его. Например, частность, которая может иметь очень важное значение: компонент OpenOffice.org OpenWriter позволяет экспортировать документы непосредственно в формат PDF. Интерфейс OpenOffice.org устроен принципиально так же, как и у аналогичных продуктов Microsoft, так что пользователю, привыкшему к Microsoft Office, не составит большого труда перейти к работе в OpenOffice.org. Кроме того, OpenOffice.org позволяет работать со всеми форматами файлов Microsoft Office.

История OpenOffice.org напоминает историю Mozilla: поначалу проект (под именем StarOffice) развивался закрыто, без доступа мирового программистского сообщества к исходным текстам. Однако в 2000-м году компания Sun Microsystems открыла исходные тексты программного продукта, образовав OpenOffice.org. Так же, как и в случае Netscape/Mozilla, пара StarOffice/OpenOffice.org использует двойное лицензирование, дающее право как свободного доступа к исходным текстам, так и использования их в закрытых коммерческих продуктах.

По возможностям OpenOffice.org остается самым развитым и полным офисным пакетом для Linux, однако есть и другие офисные средства. В частности, офисный пакет KOffice, ориентированный на среду KDE, в котором предусмотрен примерно тот же набор офисных приложений, что и в OpenOffice.org. Кроме того, есть отдельные офисные приложения, не составляющие пакетов – словарный процессор Abiword и электронные таблицы GNUmeric.

Графика

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

Векторная графика

Векторной графикой называется такой способ представления изображения в виде фигур, каждая из которых имеет собственное описание (тип, размеры, кривизну или иные параметры составных частей, их цвета, способ представления и т. п.). Некоторые графические устройства (например, распознающие формат PostScript) умеют сами интерпретировать описания фигур, для других необходимо заранее просчитать и сформировать картинку программным путем.

Работа с PostScript и PDF

Современная полиграфия уже не мыслится в отрыве от компьютеров, все допечатные материалы обычно существуют в электронной форме, и именно электронные документы подаются на печатающие устройства для вывода. Причем для современной полиграфии de facto стандартом является формат PostScript. PostScript – это язык описания страницы, позволяющий представить любые полиграфические материалы в векторном формате (однако он допускает и включение растровых фрагментов). Файл в формате PostScript фактически представляет собой программу, описывающую, какие действия нужно произвести, чтобы получить требуемый вывод. Профессиональные печатающие устройства умеют непосредственно интерпретировать документы на языке PostScript.

PDF (Portable Document Format, переносимый формат документов) – модификация языка PostScript, разработанная для того, чтобы обмениваться полиграфическими документами через Internet. В PDF есть специальные возможности для публикации документов в Сети, в частности, поддержка гиперссылок, а некоторые возможности языка PostScript оттуда, наоборот, исключены.

GhostScript – интерпретатор языка описания страниц PostScript и файлов в формате PDF (формат переносимых документов). Ghostscript преобразует PostScript во многие растровые форматы, подходящие для вывода данных на экран или на принтер, не поддерживающий PostScript. Обычно GhostScript используется для просмотра файлов PostScript и для печати на принтерах, не поддерживающих язык PostScript. GhostScript используется множеством приложений для вывода данных на печать. Графический интерфейс для GhostScript предоставляет программа GhostView (команда gv ), она позволяет отображать документы в форматах PostScript и PDF в графической среде X Window. Для различных манипуляций с файлами в формате PostScript предназначен пакет утилит командной строки psutils – с их помощью можно выбрать, отсортировать, реорганизовать, масштабировать страницы в PostScript-файлах и делать многое другое.

Специально для просмотра PDF-файлов предназначена программа xpdf, которая позволяет переходить по гиперссылкам в документе, просматривать структуру документа, производить поиск и поддерживает сглаживание шрифтов. Альтернативой xpdf может быть Acroread – версия известного приложения Adobe Acrobat для Linux, однако в отличие от xpdf оно является несвободным программным продуктом.

Диаграммы

Отдельно стоит упомянуть редакторы диаграмм, которые часто смешивают с обычными редакторами векторной (плакатной) графики. Между тем задачи у них разные: если для плакатной графики главное – построение "картинки", соответствующей задумке автора по внешнему виду, то в диаграмме автора больше беспокоит логическое соответствие изображения проекту и его наглядность. Поэтому при построении диаграммы много внимания уделяется "стрелочкам" и прочим соединительным линиям, оптимальному размещению объектов на странице, типизации объектов и т. п.

Самая старая из подобных утилит, XFig, и по сей день активно используется, формат ее диаграммы распознают многие средства работы с векторной графикой. Более мощной является ориентированная на среду Gnome утилита Dia, возможности которой продолжают расти (существует даже проект перевода диаграмм в нотации языка моделирования программных UML непосредственно в текст на C++). Аналогом Dia для KDE является встроенная в пакет KOffice утилита Kivio.

Плакатная графика

Что же касается собственно векторной (плакатной) графики, то и здесь есть из чего выбирать. Например, Sodipodi – программа векторного рисования общего назначения. Она использует подмножество формата W3C SVG в качестве формата собственных файлов. Здесь применяется новейшее ядро для отображения, со сглаживанием, альфа-каналом и векторными шрифтами. Сходными возможностями обладает и отпочковавшаяся от Sodipodi программа Inkscape, отличительным свойством которой является полная поддержка формата SVG и ориентация на среду Gnome. Многообещающе выглядит проект Skencil, позволяющий редактировать некоторые виды PostScript-файлов. Среда KDE также имеет "свой" редактор векторной графики, Karbon14, входящий в состав семейства программ KOffice.

Растровая графика

Понятие " растровая графика " означает, что изображение представлено в виде матрицы точек ("пикселей"). Это значит, что при сильном увеличении границы любого объекта будут выглядеть "лесенкой" из разросшихся в квадраты точек (в отличие от векторного представления, где увеличение повышает качество изображения). С другой стороны, растр – удобный для компьютерной обработки формат представления фотографий, сделанных от руки рисунков и прочих изображений, которые нельзя расчленить на отдельные фигуры.

В GNU/Linux имеются развитые средства для редактирования растровой графики. Самым мощным из них является GIMP ( G NU I mage M anipulation P rogram). С ее помощью пользователь может редактировать изображения, создавать логотипы и другие графические элементы, особенно полезные при создании Web-страниц. GIMP включает много инструментов и фильтров, аналогичных тем, которые можно найти в коммерческих графических редакторах, а также несколько возможностей, эксклюзивных для этой программы. GIMP предоставляет возможность работать с цветовыми каналами, уровнями изображения, накладывать эффекты, сглаживать шрифты и конвертировать изображения в разные форматы. В GIMP имеется собственный язык программирования сценариев (на основе Scheme), на котором можно создавать довольно замысловатые дополнения к основной программе. Недостаток GIMP – слабая (оформленная в виде дополнения) поддержка цветового стандарта CMYK, используемого в полиграфии, поэтому в электронной документации, редактировании изображений для WWW-страниц и прочих областях, не имеющих дела с бумагой, его применяют чаще.

Очень полезен набор утилит для обработки графики из командной строки – ImageMagick. В этот набор входят утилиты для отображения ( display ), преобразования ( convert ) изображений, захвата изображений с экрана ( import ) и даже собственный интерпретируемый язык программирования, Magick Scripting Language. Для полуавтоматического перевода из растрового представления в векторное существует несколько специальных утилит, например, autotrace/autofig или potrace.

Трехмерная графика

Для Linux создано несколько программных пакетов, работающих с пространственным представлением объектов.

Исходные тексты одного из самых мощных пакетов трехмерного моделирования, пересчета (рендеринга) и анимации – Blender – в 2002 году были открыты и весь проект полностью переведен под свободную лицензию. Авторы Blender пришли к выводу, что открытая разработка инструмента более эффективна и прибыльна для тех, кто этим инструментом (а не его продажей) зарабатывает. Для этого пришлось выкупить находящиеся в собственности спонсоров части проекта у хозяев за 100 000 евро. Искомую сумму предоставило сообщество пользователей Blender, уже тогда немалое: каждый внес сколько смог, и менее чем за два месяца денег на счете оказалось достаточно. С тех пор круг пользователей и возможности Blender продолжают постоянно расти.

Для выполнения задач, совмещаемых Blender, есть и отдельные программные средства. Например, популярный пакет трассировки лучей (трехмерного проектирования и сценографии) POV-Ray, с помощью которого создаются проекты удивительной сложности и красоты (например, перевод картины Уильяма Марлоу "Каприччо" в трехмерное представление – с тем только, чтобы из определенной точки повторить ее). Многие графические редакторы имеют встроенные средства анимации, а иные (как, например, CinePaint, называвшийся ранее FilmGimp) специально разрабатываются для мультипликаторов.

Не стоит забывать, что популярный нынче стандарт OpenGL – открытый; он разрабатывался для UNIX-подобных систем и используется большим числом программ для Linux (в том числе и Blender). К сожалению, производители аппаратного обеспечения (видеокарт), как правило, скрывают не только устройство своих карт, но даже способ их низкоуровнего использования. Поэтому в открытом доступе оказываются лишь готовые драйверы (без исходных текстов) к некоторым версиям ядра Linux и определенным сборкам XFree86. Отображение трехмерных объектов с пересчетом на программном уровне пока работает существенно медленнее, хотя ничуть не хуже. Поэтому используя OpenGL для игр и прочих программ, требующих действительно быстрой работы графической подсистемы, нужно всегда помнить о необходимости получить – возможно, несвободный – драйвер.

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Тимур Булатов
Тимур Булатов

С момента выхода курса прошло достаточно много времени, и хотелось бы понимать, насколько курс является актуальным на сегодняшний день.

дмитрий шремзер
дмитрий шремзер

В поле PPID (" p arent p rocess id entificator") указан идентификатор родительского процесса, т. е. процессапородившего данный. Для ps это – bash, а для bash, очевидно, login

А что тогда находится в поле CMD?

алексей оглы
алексей оглы
Россия
рафич Салахиев
рафич Салахиев
Россия