Inkscape
Inkscape (Инкскейп) — свободно распространяемый векторный графический редактор, удобен для создания как художественных, так и технических иллюстраций (вплоть до использования в качестве САПР общего назначения, чему также способствует лёгкость обмена чертежами). Это стало возможным во многом благодаря открытому формату SVG, развиваемому консорциумом W3C. Формат SVG позволяет создавать иллюстрации различного типа, в том числе анимированные. Поскольку SVG основан на расширяемом языке разметки (XML), к нему можно писать расширения, чем авторы Inkscape и пользуются[8]. Программа распространяется на условиях GNU General Public License.
История
[править | править код]История Inkscape началась с того, что нескольких программистов и дизайнеров, умеющих писать код, перестали устраивать условия разработки редактора векторной графики Sodipodi. Поняв, что они не смогут в должной степени применить свои навыки, они организовали новый проект[9], который назвали Inkscape. На тот момент[когда?] в Linux было всего два редактора векторной графики, которые можно было использовать в реальной работе — Sodipodi и Sketch, позднее переименованный в Skencil. С тех пор разработка Sodipodi и Skencil сошла на нет. Inkscape стал преемником Sodipodi, а на основе Skencil стал развиваться проект sK1. В версии Inkscape 0.91 добавлено много новых возможностей и исправлено более 700 ошибок, допущенных в версии 0.48, что делает Inkscape более готовым к использованию[10]. Inkscape де-факто стал самым популярным свободным редактором в своей области. 17 января 2019 года, спустя почти 20 лет с момента выпуска первой версии программы, Inkscape вышел в стадию альфа-тестирования версии с номером 1.0.
Возможности
[править | править код]Собственный формат документов
[править | править код]- основан на SVG v1.1, содержит ряд расширений для увеличения функциональности;
- документы Inkscape SVG можно сохранить как Plain SVG с возможностью изменять неподдерживаемые в обычном SVG элементы, такие, как контуры;
- документы можно сохранять и открывать в сжатом виде, с использованием алгоритма компрессии gzip;
- использование групп SVG как слоёв, перемещение документов между слоями.
Поддерживаемые форматы документов
[править | править код]- Импорт: SVG, SVGZ, CGM, EMF, DXF, EPS, PostScript, PDF, AI (9.0 и выше), CorelDRAW, Dia, Sketch, PNG, TIFF, JPEG, XPM, GIF, BMP, WMF, WPG, GGR, ANI, ICO, CUR, PCX, PNM, RAS[англ.], TGA, WBMP, XBM, XPM, TXT.
- Экспорт: PNG, SVG, EPS, PostScript, PDF 1.4 (с полупрозрачностью), Dia, AI, Sketch, POV-Ray, LaTeX, OpenDocument Draw, GPL, EMF, POV, DXF.
Inkscape может редактировать и сохранять только одну страницу из всего PDF-документа.
Удобство использования
[править | править код]- привычные инструменты: Выделение, Масштабирование, Правка узлов, Прямоугольник, Эллипс, Звезда, Спираль, Линия от руки, Перо (кривые Безье), Текст, Градиент, Пипетка;
- инструмент Заливка для трассирующей заливки, создающий новый контур заданного цвета из любой замкнутой векторной или растровой области;
- инструмент Корректор для изменения формы и цвета контуров мягкой кистью;
- инструмент Параллелепипед для рисования параллелепипеда в перспективе, с простым редактированием линий перспективы и точек схода;
- инструмент Каллиграфическое перо, позволяющий выполнять серьёзные каллиграфические работы при помощи планшета (распознаётся сила нажатия и наклон пера), а также содержащий встроенную функцию штриховой гравировки;
- инструмент Ластик, предназначенный для стирания объектов или внутри них;
- инструмент Аэрограф, предназначенный для распыления копий или клонов выделенного объекта, учитывает сила нажатия пером планшета;
- рисование кривых Спиро (клотоиды), то есть всегда ровных, без «горбов» кривых;
- контекстная панель параметров инструментов;
- большое количество продуманных клавиатурных комбинаций для вызова функций;
- информативная статусная строка, сообщающая полезную информацию о выделенных объектах и подсказывающая клавиатурные комбинации;
- встроенный векторизатор растровых изображений, использующий SIOX для выделения объектов на переднем плане;
- расширенные возможности работы с клонами объектов, создание узора из клонов при помощи любой из 17 групп симметрии;
- поддержка наклона и силы нажатия стилуса при использовании графических планшетов (инструмент Каллиграфическое перо);
- коллективное рисование через протокол XMPP (временно отключено);
- экономия времени за счёт использования клонов и вставки стиля (присваивание свойств заливки и штриха одного объекта другому);
- редактор XML-кода документа с деревом объектов — для доступа к временно неподдерживаемым в графическом интерфейсе параметрам документа;
- возможность аналитического задания кривых с использованием возможностей языка python;
- дополнения, позволяющее создавать формулы в стиле LaTeX, а также строить графики с использованием PSTricks.
Операции с контурами
[править | править код]- логические операции: сумма, разность, пересечение, исключающее ИЛИ, разделить, разрезать контур;
- динамическая и связанная втяжка;
- упрощение контура;
- оконтуривание штриха;
- создание составных контуров;
- вставка нового узла в любую точку контура;
- быстрая смена типа узла с острого на сглаженный или симметричный;
- динамические контурные эффекты.
Архитектура
[править | править код]- используется «движок» рендеринга Cairo;
- возможность писать расширения, реализующие, к примеру, поддержку новых форматов данных;
- инфраструктура для исполнения сценариев, написанных на Perl, Python и Ruby;
Целевое использование
[править | править код]- иллюстрации для офисных циркуляров, презентаций; создание логотипов, визиток, плакатов;
- технические иллюстрации (схемы, графики и пр.);
- векторная графика для высококачественной печати (с предварительным импортом SVG в Scribus);
- веб-графика — от баннеров до макетов сайтов, пиктограммы для приложений и кнопок сайтов, графика для игр.
Планы
[править | править код]Основная цель — полная поддержка SVG Mobile Specification и частичная поддержка — SVG Full Specification. Это включает в себя поддержку анимации[11] и SVG-фильтров[12].
Запланирована максимальная модуляризация кода и выделение общего кода в повторно используемые библиотеки. Первый шаг к этому — версия 0.47, выпущенная в ноябре 2009 года.
Inkscape и Google Summer of Code
[править | править код]Проект Inkscape участвует в программе Google Summer of Code с 2005 года, то есть с самого начала. Благодаря участию в программе проект обзавёлся новыми постоянными разработчиками.
Развитие Inkscape
[править | править код]2005
[править | править код]- Создание встроенного средства коллективной работы средства Inkboard. Проект успешно завершён.
- Создание инструмента соединительных линий для технических иллюстраций (блок-схем и т. д.). Проект успешно завершён. Продолжается работа над инструментом, параллельно проверяются новые идеи в прототипе под названием Dunnart[13].
- Импорт/экспорт DXF — Matt Squires. Проект не был завершён; код лежит в дереве разработки, но не используется. Начиная с версии 0.47 импорт DXF реализован иным способом.
2006
[править | править код]- Поддержка фильтров SVG[12]. Проект успешно завершён.
- Изменения в протоколе и библиотеке Inkboard. Проект успешно завершён.
- Экспорт в PDF через Cairo. Проект успешно завершён.
- Оптимизация использования памяти. Проект не реализован.
2007
[править | править код]- Улучшения в работе с текстом. Реализована поддержка <tref>, улучшена внутренняя обработка разных начертаний внутри гарнитуры. Код включён в состав версии 0.46.
- Встроенный импорт PDF и AI на основе Poppler. Код включён в состав версии 0.46.
- Динамические контурные эффекты для контуров. Код включён в состав версии 0.46.
- Инструмент рисования параллелепипедов в перспективе. Код включён в состав версии 0.46.
- Графический интерфейс к фильтрам SVG. Код включён в состав версии 0.46.
- Растровые эффекты на основе ImageMagick. Код включён в состав версии 0.46.
- Импорт и экспорт данных на ccHost. Код включён в состав версии 0.46.
2008
[править | править код]- Поддержка SVG Fonts. Проект успешно завершён.
- Интеграция lib2geom: внутреннее представление контуров. Проект успешно завершён.
- Разработка lib2geom: наращивание функциональности. Проект успешно завершён.
- Техническое иллюстрирование в Inkscape. Проект успешно завершён, но за недоработанностью не включён в новые версии программы.
- Пакет тестов. Проект успешно завершён.
2009
[править | править код]- Улучшения в реализации управления цветом и поддержке CMYK. Успешно завершено, будет доступно в 0.48.
- API для написания сценариев. Успешно завершено, сроки включения в основное дерево разработки пока неизвестны.
- Одновременное редактирование нескольких контуров. Успешно завершено, будет доступно в 0.48.
- Улучшения в работе инструмента соединительных линий. Успешно завершено, будет доступно в 0.48.
- Разработка lib2geom. Проект не завершён.
2010
[править | править код]- Пространственно-временное индексирование объектов документа для повышения производительности.
- Рендеринг при помощи Cairo.
- Динамический контурный эффект Power Stroke (модулируемая толщина контура).
- Переработка сохранения и экспорта, переработка диалога экспорта.
- Переписывание SPlayer на C++.
2015
[править | править код]- Улучшения работы инструмента Текст
- Добавлен инструмент Линейка
- Полноценный импорт и экспорт графики в форматах WMF и EMF
- Поддержка реальных единиц измерения (миллиметры)
- Нативный пакет под Windows x64
2018
[править | править код]- Добавлены новые параметры командной строки, управляющих размером страницы
- Новый настройки радиуса эллипса
- Добавлена поддержка многострочного текста с базовой поддержкой атрибута межстрочного интервала
- Расширены настройки рендеринга
- Улучшена обработка шрифтов и ускорена загрузка программы в Windows
2019
[править | править код]- Завершена поддержка Windows XP
- Реализована функция выравнивания для нескольких не сгруппированных объектов
Сотрудничество с другими проектами
[править | править код]Разработчики Inkscape достаточно тесно общаются с командами GIMP и Scribus и неоднократно встречались с ними на ежегодных конференциях Libre Graphics Meeting.
Пользователи и разработчики Inkscape являются авторами существенной части свободной библиотеки векторных изображений Open Clip Art Library[14]. Кроме того, программа активно используется участниками проекта Open Street Map.
Побочные проекты
[править | править код]У проекта есть три побочных проекта:
- 2Geom[15] — библиотека, реализующая алгоритмы вычислительной геометрии. Разрабатывается Натаном Хёрстом, Менталом, Майклом Виброу, Майклом Слоаном и другими. Начиная с версии 0.46 библиотека используется в составе Inkscape. Нестабильная версия Scribus (1.3.5) также использует 2Geom для эффекта деформации по сетке.
- Adaptagrams[16] — общее название комплекта библиотек libvpsc, libcola и libavoid, предназначенных для создания редакторов блок-схем.
- Inkboard[17] — проект, уже вошедший в состав Inkscape и отдельно не развиваемый. Представляет собой встроенное клиентское приложение для совместного рисования. Использует протокол XMPP. Текущая версия Inkboard достаточно нестабильна и не умеет передавать собеседнику все локально выполняющиеся изменения. Запланирован переход на использование Telepathy[18].
Альтернативы
[править | править код]У Inkscape имеются альтернативы как среди свободных, так и проприетарных программных средств[19]:
- Gravit — кросс-платформенный векторный редактор, выпущенный под свободной лицензией. В 2018 вошёл в портфель продуктов компании Corel.
- OpenOffice.org Draw — компонент одноимённого офисного пакета;
- Xara Xtreme for Linux — свободная версия известного векторного редактора, исходный код которого почти весь был публично открыт в марте 2006 года. В настоящее время разработка этого продукта прекращена;
- sK1 — векторный редактор, реализованный на Python и C; см. также Skencil;
- Karbon — векторный редактор, часть KOffice.
Среди коммерческого программного обеспечения следует отметить CorelDraw, Adobe Illustrator, Macromedia FreeHand MX.
Недостатки
[править | править код]- невозможность экспорта в SWF;
- некорректный экспорт в другие форматы проприетарных графических программ (Adobe, CorelDraw);
- невозможность использования привычных горячих клавиш (например, Ctrl+C), если текущая раскладка не английская — унаследованный недостаток от библиотеки GTK+;
- не работает поддержка шрифтов, которые реализованы без поддержки юникода.
Примечания
[править | править код]- ↑ https://sourceforge.net/p/inkscape/mailman/inkscape-announce/?viewmonth=200311 (англ.)
- ↑ https://inkscape.org/learn/faq/#how-did-inkscape-start (англ.)
- ↑ Inkscape launches version 1.4, with powerful new accessible and customizable features
- ↑ 1 2 https://inkscape.org/en/learn/faq/#what-formats-can-inkscape-importexport
- ↑ The inkscape Open Source Project on Open Hub: Languages Page — 2006.
- ↑ https://inkscape.org/en/learn/faq/#What_License_is_Inkscape_released_under?
- ↑ https://bazaar.launchpad.net/~inkscape.dev/inkscape/trunk/view/head:/COPYING
- ↑ Inkscape SVG vs. plain SVG — Inkscape Wiki . Дата обращения: 24 июля 2007. Архивировано 1 июля 2007 года.
- ↑ SourceForge.net: IMS Enterprise SDK: cetis-es-development . Дата обращения: 15 июля 2007. Архивировано 12 октября 2007 года.
- ↑ Inkscape 0.91 . Дата обращения: 8 июля 2014. Архивировано 4 июля 2014 года.
- ↑ Animation — [[SVG]] 1.1 (Second Edition) . Дата обращения: 29 августа 2006. Архивировано 27 августа 2006 года.
- ↑ 1 2 Filter Effects — SVG 1.1 (Second Edition) . Дата обращения: 29 августа 2006. Архивировано 28 августа 2006 года.
- ↑ Dunnart Constraint-Based Diagram Editor . Дата обращения: 15 июля 2007. Архивировано 5 июля 2007 года.
- ↑ Library http://openclipart.org Архивная копия от 17 апреля 2019 на Wayback Machine
- ↑ lib2geom Homepage . Дата обращения: 11 мая 2022. Архивировано 12 апреля 2022 года.
- ↑ Adaptagrams: Tools for Adaptive Diagrams Архивировано 14 сентября 2008 года.
- ↑ Inkboard . Дата обращения: 1 июля 2008. Архивировано 5 апреля 2008 года.
- ↑ Telepathy Wiki — FrontPage . Дата обращения: 1 июля 2008. Архивировано 16 мая 2008 года.
- ↑ Open Source as Alternative . Дата обращения: 27 октября 2012. Архивировано 19 октября 2012 года.
Литература
[править | править код]- T. Bah. Inkscape: Guide to a Vector Drawing Program. — Prentice Hall, 2011. — 504 p. — ISBN 978-0-13-276414-8.
- D. Kirsanov. The Book of Inkscape: The Definitive Guide to the Free Graphics Editor. — No Starch Press, 2009. — ISBN 978-1-59327-181-7.
- Mihaela Jurković. Inkscape 0.48 Illustrator's Cookbook. — Packt Publishing, 2011. — ISBN 978-1-84951-266-4.
- Bethany Hiitola. Inkscape Beginner's Guide. — Packt Publishing Ltd, 2012. — 616 с. — ISBN 978-1-84951-721-8.
- Дмитрий Кирсанов. Серия уроков по InkScape // Linux Format. — 2006. — Январь-декабрь (№ 74—86).
- Сергей Токарев (2006-03-23). "Командная строка для дизайнера". Компьютерра. Дата обращения: 23 ноября 2016.
Ссылки
[править | править код]- inkscape.org — официальный сайт Inkscape
- Inkscape Wiki (англ.)
- Блог с уроками Inkscape (англ.)
- Уроки Inkscape от paint-net.ru
- Уроки Inkscape от OpenArts
- Программное обеспечение по алфавиту
- Программное обеспечение, разработанное в 2003 году
- Свободные векторные графические редакторы
- GNOME Office
- Кроссплатформенное программное обеспечение
- Программное обеспечение для macOS
- Программное обеспечение для Linux
- Программное обеспечение для Windows
- Программное обеспечение с лицензией GNU GPL
- Свободное программное обеспечение, написанное на C++
- Программы для редактирования PDF
- Переносимые приложения
- Векторные графические редакторы