Inkscape — свободный редактор векторной графики, для которого SVG является родным форматом. Он не растрирует изображение при сохранении: линии, текст и градиенты остаются объектами, которые можно править через месяц и масштабировать без потери качества. Инструмент пригодится для логотипов, схем, иконок, карт и макетов, но у него есть границы — особенно в типографике и цвете для печати. Ниже практический разбор: установка, работа с контурами, текст, экспорт и командная строка.
SVG как рабочий формат
SVG — это XML, поэтому файл открывается в браузере, читается текстовым редактором и принимается большинством веб-платформ. Внутри документа есть слои, группы, объекты и определения: градиенты, фильтры, обтравочные контуры. Понимание этой структуры экономит время при верстке и автоматизации.
- Объект хранит тип, координаты и стиль; его проще редактировать мышью.
- Контур состоит из узлов и сегментов; только с ним работают логические операции.
- viewBox задаёт систему координат и определяет, как рисунок масштабируется в макете.
- Фильтры и размытие выполняются при отрисовке и могут сильно замедлять большие файлы.
- Встроенный растр увеличивает размер файла и не является вектором.
Для веба удобны px и viewBox, для печати — миллиметры. Смешивать единицы в одном документе можно, но лучше сразу выбрать основную и придерживаться её.
Слои в Inkscape — обычные группы с именем и флагом видимости, но именно они держат документ в порядке. Разложите фон, иллюстрацию и подписи по отдельным слоям, заблокируйте готовые элементы и не смешивайте растровые вставки с контурами. При экспорте в SVG слои сохраняются, а при преобразовании в PDF часть эффектов может упроститься, поэтому результат всегда проверяют в просмотрщике.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120">
<rect x="10" y="10" width="100" height="100" fill="#2b6cb0"/>
<circle cx="60" cy="60" r="30" fill="#f6ad55"/>
</svg>
Установка и настройка документа
Пакет есть в Debian, Ubuntu, Fedora и Arch; альтернатива — Flatpak с более свежей версией. Сборки из репозиториев и Flatpak различаются версией, но набор базовых инструментов един, а расширения написаны на Python 3. Цветовое пространство остаётся RGB. После установки проверьте версию: от неё зависит набор действий в командной строке.
sudo apt install inkscape
flatpak install flathub org.inkscape.Inkscape
inkscape --version
В свойствах документа задайте размер страницы, единицы и фон. Для иконки удобен холст 256×256 px, для листовки — A4 в миллиметрах. Включите сетку и привязку к узлам, если рисуете схему: это заметно ускоряет выравнивание.
Контуры, узлы и логические операции
Инструмент узлов показывает опорные точки и управляющие рычаги. Лишние узлы удаляются клавишей Delete, тип сегмента переключается между прямым и кривым, а сглаживание задаётся профилем. Перед булевыми операциями объекты преобразуются в контуры: «Контур → Оконтурить объект». После этого доступны объединение, разность, пересечение и исключение.
- Выделите два объекта и выполните «Контур → Разность», чтобы получить вырез.
- Проверьте направление контуров, если заливка исчезла или появилась дыра.
- Упростите контур командой «Контур → Упростить», но не увлекайтесь: форма плывёт.
- Для печати и плоттера преобразуйте обводку в контур отдельной командой.
Логические операции необратимы, поэтому исходные объекты лучше дублировать заранее. Сложные фигуры удобнее собирать из простых и объединять в группу, а не сливать в один контур.
Текст, обводки и Live Path Effects
Текст остаётся текстом, пока вы не выполните «Контур → Оконтурить объект». Это удобно для правок, но шрифт должен быть установлен у получателя файла. Перед отправкой в типографию, на плоттер или в другой редактор текст преобразуют в контуры: иначе вместо букв появится подстановка. Для надписи по дуге используется «Текст → Разместить по контуру».
Live Path Effects — неразрушающие эффекты: смещение, деформация, узор вдоль контура, скругление углов. Они хранятся в файле и пересчитываются при изменении исходника. Если эффект нужен для обмена, примените его и проверьте результат в другом просмотрщике: не все программы понимают расширения Inkscape.
Экспорт и командная строка
Для одного файла достаточно диалога экспорта, но серии иконок быстрее обрабатывать в терминале. Ключ --export-type задаёт формат, --export-dpi — плотность, а --export-filename — имя результата. Область экспорта выбирается страницей, рисунком или выделением.
inkscape logo.svg --export-type=png --export-dpi=300 --export-filename=logo-300.png
inkscape logo.svg --export-type=pdf --export-filename=logo.pdf
inkscape --query-all logo.svg
for f in *.svg; do inkscape "$f" --export-type=png --export-dpi=150; done
Пакетная обработка через действия позволяет привести файлы к единому виду:
inkscape --actions="select-all;object-to-path;vacuum-defs;export-filename:out.svg;export-do" in.svg
Команда --query-all печатает идентификаторы и габариты объектов. Это помогает найти слишком большой холст или объект, выехавший за границы. Для проверки шрифтов полезен fc-match: он показывает, какой файл подставится вместо заявленного семейства.
fc-match "DejaVu Sans"
fc-list :lang=ru family | sort -u | head
Производительность и типичные ошибки
Тормоза чаще всего вызваны фильтрами, размытием, тысячами узлов и встроенными фотографиями. Отключите отображение фильтров на время работы, упростите контуры и удалите неиспользуемые определения. Если файл открывается медленно, проверьте размер встроенных изображений и число объектов в группах. Файл с десятком мегабайт растра внутри не станет вектором от смены расширения.
Ещё одна ошибка — экспорт с прозрачным фоном туда, где нужен белый. Для печати проверяйте, что нет объектов за пределами страницы, а линии не тоньше возможностей оборудования. Цвета на экране и в типографии совпадут только при согласованном профиле; для CMYK-макетов Inkscape не лучший инструмент, здесь уместнее Scribus.
Чек-лист перед сдачей макета
- Текст переведён в контуры или шрифты приложены отдельно.
- Все обводки, которые должны печататься, превращены в контуры.
- Холст совпадает с нужным форматом, лишние объекты удалены.
- Файл сохранён как обычный SVG без расширений Inkscape, если нужна совместимость.
- PNG экспортирован в нужном разрешении, а PDF открывается в просмотрщике.
- Исходник сохранён отдельно и не перезаписан экспортом.
Итог
Inkscape закрывает повседневные задачи векторной графики: иконки, логотипы, схемы, иллюстрации и подготовку SVG для веба. Он не пытается быть универсальной издательской системой, зато хорошо автоматизируется и не требует подписки. Освоив контуры, слои и командный экспорт, вы получите предсказуемый инструмент, который одинаково работает в Linux, Windows и macOS.