Автоматизация процессов создания симметричных изображений путем расширения базовых возможностей программных средств компьютерной графики

ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ

УДК 655.26; 681.3

Сипайло С. В., ассистент; Долгова Т. А., доцент

АВТОМАТИЗАЦИЯ ПРОЦЕССОВ СОЗДАНИЯ СИММЕТРИЧНЫХ ИЗОБРАЖЕНИЙ ПУТЕМ РАСШИРЕНИЯ БАЗОВЫХ ВОЗМОЖНОСТЕЙ ПРОГРАММНЫХ СРЕДСТВ

КОМПЬЮТЕРНОЙ ГРАФИКИ

In article the analysis of existing methods and instruments for extension of functionality of graphics packages is made. For this purpose applications CorelDraw, Adobe Photoshop, Adobe Illustrator are examined. Adaptation of the theory of symmetry for automation of process of creation of symmetric digital images is shown. Conclusion about fundamental possibility of development of specialized graphics software by writing of programs-scripts is drawn. The estimation of efficiency of such approach to automation of particular tasks of image creating and processing is given.

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

Ключевым фактором, влияющим на эффективность применения информационных технологий, является используемое программное обеспечение.

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

основанное на предусмотренных в них механизмах автоматизации работы.

Многие изображения, используемые в полиграфическом дизайне, обладают симметрическими свойствами. К таким изображениям можно отнести декоративные векторные узоры, используемые при оформлении книг, грамот, дипломов и т. п. Это могут быть как отдельные декоративные элементы малого размера, так и фоновые узоры большой площади, образованные повторяющимися фрагментами.

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

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

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

Самым простым средством автоматизации является запись линейной последовательности операций. Такой способ повышения функциональности реализован фирмой Adobe в своих программных продуктах Illustrator и Photoshop посредством палитры Actions [1]. Палитра оснащена элементами управления для записи и вос-

произведения цепочки действий, а также создания иерархической структуры их хранения. Достоинством такого варианта автоматизации труда является техническая простота реализации, не требующая навыков программирования. К его недостаткам можно отнести исключительно линейный характер алгоритма работы и не совсем удобный доступ пользователя к той или иной цепочке операций.

Более полные возможности по автоматизации работы дает расширение стандартных функций приложения путем написания программы-сценария (script) на языке программирования высокого уровня. При таком подходе алгоритм действий будет иметь более сложную структуру с возможностью циклического повторения операций и выполнения логических команд. Также возможна организация диалога с пользователем в процессе выполнения сценария. О востребованности такого подхода свидетельствует наличие коммерческих разработок в данной области и неоднократное освещение этой темы в специализированных изданиях [2-4].

В программах графического пакета CorelDraw для написания программ-сценариев используется язык Visual Basic for Applications, получивший очень широкое распространение на персональных компьютерах с операционной системой Windows благодаря всесторонней поддержке фирмы-разработчика Microsoft. Графические приложения Illustrator, Photoshop фирмы Adobe позволяют создавать программные расширения на нескольких языках: 1) Java Script (поддерживается как операционной системой Windows, так и MacOS); 2) Apple Script (фирменная разработка компании Apple для повышения автоматизации работы в среде MacOS); 3) Visual Basic for Applications (только для Windows-версий программ).

Наиболее удобным в отношении разработки и эксплуатации программных расширений по рассматриваемому методу представляется CorelDraw. Во-первых, в отличие от Illustrator, программа имеет встроенные средства ввода, отладки и интерпретации программного кода, что повышает удобство работы и не требует приобретения внешнего редактора «сценариев». Вторым преимуществом CorelDraw над программными продуктами Adobe являются более широкие возможности по созданию и модификации элементов пользовательского интерфейса, выражающиеся в формировании пользовательских панелей инструментов как на основе имеющихся команд, так и на основе разработанных пользователем программных процедур.

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

центры, оснащенные исключительно компьютерами Macintosh, практически не встречаются. Кроме того, существуют широкие программные и аппаратные возможности по передаче информации между различными компьютерными платформами посредством локальных сетей и портативных носителей информации высокой емкости. Еще одним аргументом в пользу эффективного взаимодействия разных платформ является завершившийся переход компьютеров Macintosh на аппаратную основу фирмы Intel, т. е. все новые модели компьютеров фирмы Apple аппаратно совместимы с PC. Также стоит отметить официальную поддержку современными компьютерами Macintosh системы Windows, что позволяет эксплуатировать на одной вычислительной машине обе операционные системы.

Наиболее известным разработчиком коммерческих решений для CorelDraw является компания Oberon [2]. К ее разработкам относятся программы-сценарии SecuriDesign, Calendar Wizard, Function Plotter, CurveWorks. Названные программные расширения имеют достаточно широкие функциональные возможности, сопоставимые с отдельным приложением, обладают дружественным графическим интерфейсом и дают возможность редактирования и сохранения результатов работы средствами базовой программы. При этом их стоимость заметно ниже автономного программного обеспечения соответствующей специализации. Скорость выполнения программ-сценариев на современных компьютерах, удовлетворяющих системным требованиям CorelDraw, позволяет осуществлять работу по созданию иллюстраций и оформлению изданий в режиме реального времени.

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

Автоматизация синтеза симметричных орнаментальных изображений в среде CorelDraw. Теория симметрии располагает символьным аппаратом, обеспечивающим представление всех существующих видов симметрии изображений в формализованном виде, что может служить основой для алгоритмического описания процесса создания симметричных объектов и его реализации.

Одним из приложений теории симметрии в отечественной полиграфии является программа Ornamentika, разработанная на кафедре полиграфических производств Белорусского государственного технологического университета [5]. Ornamentika представляет собой программу-сценарий, работающую на базе CorelDraw, предназначенную для автоматизации процесса создания белорусских народных орнаментов. В

соответствии с принципом симметрии орнаментальных фигур, положенным в основу алгоритма программы, белорусские геометрические орнаменты были описаны цепочкой симметрических преобразований более простых элементов, процесс создания которых значительно менее трудоемок. При этом учитывались именно те виды симметрии, которые присущи белорусским узорам. Для программной реализации синтеза орнаментов использовался язык VBA 6.3, а для осуществления связи пользователя с соответствующими подпрограммами — такие элементы интерфейса, как диалоговые окна, окна с сообщениями и панель инструментов. Программа Ornamentika позволяет автоматически создавать достаточно разнообразные по форме геометрические розеточные мотивы, а также существенно автоматизировать процесс разработки бордюрных и сетчатых орнаментов.

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

В связи с вышеприведенным на базе программы Ornamentika разработан генератор дискретных узоров розеточного, бордюрного и сетчатого типов, базирующийся на более обобщенных принципах синтеза орнаментов. В основу его работы положен тот факт, что многие белорусские орнаменты являются составными изображениями, включающими в себя определенное количество простых симметричных элементов. Перечень таких элементов в белорусской орнаментике ограничен, а их соединение в более сложный узор может производиться в одном из двух режимов: сложение либо вычитание. Состав генерируемого узора определяется произвольно с помощью генератора случайных чисел из ограниченного набора простых элементов и их преобразований, свойственных белорусским орнаментам. Пример бордюрного узора, синтезированного компьютером, приведен на рисунке. Создаваемые изображения выполнены в стилистике белорусских народных орнаментов, однако не всегда имеют аналоги в белорусском народном искусстве. Последнее обусловлено возможностью использования не очень распространенных в белорусской орнаментике сочетаний составных элементов, что, с одной стороны, расширяет сферу применения программы, а с другой — требует от дизайнера адекватной эстетической и культурологической оценки полученных узоров. Вместе с

Рисунок. Бордюрный узор, сгенерированный компьютером в автоматическом режиме

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

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

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

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

Литература

1. Цыганенко, А. М. Программные средства допечатных процессов: в 2 кн. / А. М. Цыганенко,

B. М. Гасов. - М.: МГУП, 2000. - 370 с. - Кн. 2: Программные средства создания и обработки изобразительной информации.

2. Борисов, М. Помощники для CorelDRAW / М. Борисов // Publish. - 2003. - № 9. - С. 88-93.

3. Борисов, М. Скрипты под Illustrator: долой рутину! / М. Борисов // Publish. - 2004. - № 7. -

C. 92-99.

4. Уайлд, Э. Программирование для Adobe Illustrator на языках Visual Basic и Apple Script / Э. Уайлд. - М.: Кудиц-образ, 2003. - 464 с.

5. Сипайло, С. В. Разработка программного обеспечения для автоматизации формирования белорусских орнаментов в допечатных процессах полиграфии / С. В. Сипайло // Труды БГТУ. Сер. IX, Издат. дело и полиграфия. - 2006. - Вып. XIV. -С.55-58.

Поступила 24.12.2008.