Экспорт изображения как SVG в GIMP


85

У меня есть проект, над которым я работаю (изображение) в GIMP, и я хотел бы экспортировать его как SVG. Возможно ли это, или мне придется придерживаться экспорта нескольких размеров изображения?

Я знаю, что GIMP может читать SVG, но может ли он их экспортировать?

Ответы:


106

GIMP v2.8 изначально не экспортирует растровые изображения в файлы SVG. Раньше для этого был плагин, но этот проект, по-видимому, прекращен. Мы могли бы импортировать изображение как растровый объект в Inkscape Установить Inkscape и сохранить его как файл SVG. Затем изображение останется растровым файлом, то есть при масштабировании получит артефакты сглаживания (см. Ниже).

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

Вот как это сделать:

  1. Откройте Inkscape.
  2. Выберите «Файл - Импорт», чтобы импортировать растровый файл.
  3. Выберите «встроить» изображение.
  4. Выберите изображение с помощью инструмента выбора ( ).
  5. Выберите Path - Trace Bitmap ... для настроек (ниже показано для 2 цветов = "Сканы" ):

    введите описание изображения здесь

  6. Выберите «Обновить» для предварительного просмотра, пока настройки не будут в порядке.

  7. Начните трассировку с «ОК» .

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

  1. При необходимости уменьшите размер векторизованного изображения (удерживайте нажатой клавишу CTRL для блокировки), чтобы оно поместилось на странице. В противном случае он может выглядеть «обрезанным» при просмотре.
  2. Используйте «Файл - Сохранить как», чтобы сохранить файл в формате SVG.

Преимущество векторной графики наиболее быстро можно увидеть, когда мы увеличим ее размер. Показанный ниже был масштаб до 2500%. Верх - это исходное растровое изображение, снизу - векторизованный объект:

введите описание изображения здесь
Это изображение и объект были созданы из вашего оригинала из чата


1
Спасибо за хороший обзор. Вы можете улучшить свой ответ, дав ответ на оригинальный вопрос. Photoshop CC может экспортировать изображения в формате SVG, так может ли Gimp это делать?
Даниэльс

1
@daniels: Gimp можно сделать, чтобы экспортировать растровое изображение, встроенное в SVG, с плагином, но это (как PS btw) не будет отслеживать растровое изображение в векторе. Для этого вам понадобится Inkscape или другой трассировщик, например, autotrace. Для последнего есть плагин Trace gimp, который я не тестировал.
Таккат

@Takkat, расширение gimpToSVG ​​больше не существует
kokbira

@ Таккат, где? На github.com/jabiertxof/gimpToSVG вы можете видеть только информацию «переехал в GitLab». По указанной ссылке GitLab, gitlab.com/jabiertxof/gimpToSVG , вы не можете скачать и увидеть код «Вам нужно разрешение. Хотите посмотреть данные? Пожалуйста, обратитесь к администратору для доступа.», Но где?
Кокбира

@Takkat, попытка git.exe pull -v --progress "https://gitlab.com/jabiertxof/gimpToSVG/"возвращает "remote: вам не разрешено загружать код из этого проекта. / Fatal: невозможно получить доступ к gitlab.com/jabiertxof/gimpToSVG.git ": запрошенный URL-адрес возвратил ошибку: 403 / git не завершился корректно (код выхода 1) (21075 ms @ 13/06/2017 08:29:28) "
Кокбира

18

Даже если Gimp не является векторной программой, вы можете экспортировать отдельные пути в виде файла SVG с помощью Export Pathпункта меню.

Вот фотоурок, который подробно объясняет, как это сделать.


12

GIMP - приложение для работы с растровым графиком. SVG - это форма векторной графики. Если вы хотите редактировать файлы SVG, вам следует установить inkscapeпакет и использовать вместо него Inkscape. Кроме того, имейте в виду, что SVG не является полностью «масштабируемым» в том смысле, что вы получите хорошее изображение при любом масштабируемом размере, поэтому в зависимости от того, что вы создаете с его помощью, вам может потребоваться нарисовать изображение разных размеров, с различное количество деталей, так что изображения будут хорошо смотреться при этих размерах. Например, значки приложения необходимо рисовать в разных размерах, независимо от того, нарисованы они как растровые или векторные изображения.


7

Если вам нужно преобразовать растровое изображение в векторное изображение, автоматическая трассировка - это инструмент командной строки, который делает именно это.

Он доступен как пакет Debian для Debian и Ubuntu с именем autotrace

Пример использования этого:

autotrace input.jpg --output-file output.svg --output-format svg

Обновление: у меня также был успех с potrace, где у autotrace были проблемы.


3
Я попробовал с двумя изображениями, и это дает, Read Errorа другие [7B]pT[F5]: invalid chunk type... они действительны, кстати,
Adrian

1
@Adrian, разве не должна быть команда autotrace input.png --output-file output.svg --output-format svg?
Юлиан Онофрей

@ Адриан Я получил то же самое, но только что проверил сайт и думаю, что он не поддерживает PNG. Я попробовал PBM, и тогда это сработало!
пошагнесси

Он не распознал png, поэтому я преобразовал его в jpg. Это произвело почти 6 МБ svg от jpg на 200 КБ. Причина в том, что каждый пиксел в основном занимает маленький квадрат. Не может использоваться в этой форме.
Чаба Тот

2
Для будущих читателей, возможно, стоит отметить, что InkScape (отмеченный в выбранном ответе) в настоящее время использует выделение Potrace для своего инструмента «Trace Bitmap». Таким образом, не должно быть существенной разницы между выводами potrace и инструментом трассировки InkScape.
Спенсер Д

0

potraceэто инструмент для этого. Вы можете обрабатывать их в большом количестве, но сначала вы должны преобразовать изображения в монохромные:

ls ./p*.jpg | xargs -L1 -I {}  convert -monochrome {} {}.bmp
ls -1 ./*.bmp | xargs -L1 -I {} potrace {} -r 300 -b svg -o {}.svg

установить:

sudo apt install potrace
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.