Конвертер JPG в SVG

Обводит формы на вашей картинке настоящими векторными контурами, которые можно править, — а не прячет растр внутрь файла SVG. Отлично работает с логотипами и штриховой графикой, плохо с фотографиями, и говорит вам, что именно у вас, ещё до конвертации.

Трассировщик JPG в SVG

Трассировать в SVG

Форматы: JPGJPEGPNGWEBP
ещё 2 GIFBMP

Ничего не загружается на сервер. Инструмент работает целиком в вашем браузере, поэтому файл не покидает ваше устройство. Отправлять данные некуда: сервера в этой работе нет, копий нигде не остаётся, и всё продолжает работать, даже если соединение пропадёт после загрузки страницы.

Принимает .jpg .jpeg .png .webp .gif .bmp На выходе: Файл .svg из настоящих векторных контуров Бесплатно, без регистрации

Трассировка, а не обёртка

Когда вы отдаёте конвертеру JPG и просите SVG, он может сделать одно из двух, и это не варианты одного и того же.

Простой путь — положить исходный растр внутрь элемента <svg>. Он срабатывает всегда, не спотыкается ни на какой картинке, и расширение у файла правильное. Но это по-прежнему та же фотография: при увеличении она размывается ровно так же, как раньше. Это не векторная графика, а большинству тех, кто просит SVG, нужна именно она.

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

Как это работает

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

Контуры получаются ступенчатыми, по ступеньке на пиксель, поэтому их упрощают: ступеньки убирают, углы оставляют. Это и есть разница между логотипом в четыре килобайта и таким же на вид в четыреста. Наконец внешние и внутренние контуры каждого цвета складываются в один путь с правилом заливки even-odd — благодаря ему середина буквы «О» остаётся отверстием, а не залитым пятном поверх буквы.

С чем справляется хорошо

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

С чем справляется плохо и почему

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

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

Настройки и чего они стоят

«Цвета» — до скольких плоских цветов сводится картинка. Слишком мало — теряются детали; слишком много — шум сжатия JPEG начинает обводиться как содержимое. Начните с того числа цветов, которое вы на картинке реально видите.

«Детализация» — насколько точно контуры повторяют исходные пиксели. Резче сохраняет острые углы ценой размера файла, мягче скругляет и файл уменьшает. Ни то ни другое не «правильно» вообще, поэтому вы видите оба варианта.

«Убрать крапинки» отбрасывает фигуры в один-два пикселя. JPG логотипа не идеально плоский: сжатие превращает каждую границу в полосу промежуточных оттенков, а каждый оттенок — в свой слой с россыпью островков. Их не видно, и они составляют большую часть файла, поэтому опция включена по умолчанию.

«Не обводить фон» находит цвет, преобладающий по краям картинки, и оставляет его необведённым — получается прозрачный SVG. Логотип, приехавший на белом прямоугольнике, — обычный случай, и этот прямоугольник к логотипу не относится.

Частые ошибки

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

Поменять настройку и скачать файл, не нажав «Трассировать» заново, — ловушка, от которой страница защищает сама, а не то, во что легко попасть случайно: предпросмотр и скачивание всегда отражают последнюю трассировку, и строка состояния прямо говорит, если настройка изменилась с тех пор. Если ссылка на скачивание выглядит устаревшей, так и есть — нажмите «Трассировать» ещё раз.

Особые случаи

Картинка одного сплошного цвета даёт ноль фигур: обводить попросту нечего, а включённая при этом опция «Не обводить фон» убирает единственную имеющуюся фигуру, оставляя пустой SVG. Инструмент говорит об этом прямо, а не отдаёт файл, который выглядит как молча провалившийся результат. Очень маленькая или малоконтрастная картинка тоже может обвестись почти в ничто — по той же причине, что и фотография: в ней слишком мало по-настоящему плоских областей, между которыми можно найти границу.

Если на самом деле нужен любой файл с расширением .svg, а не настоящая векторная графика — например, для формы, которая просто проверяет тип файла, — обёртка растра была бы совсем другой, куда более простой задачей, и этот конвертер её сознательно не делает. Если исходник — WebP или HEIC, а не JPG, сначала переведите его в JPG или PNG отдельным конвертером, а затем обводите результат здесь. Если картинку нужно не обвести, а вставить в документ, для этого есть отдельный конвертер изображения в Word.

Куда девается ваша картинка

Никуда. Всё описанное выше происходит в вашем браузере, на JavaScript, над файлом, который вы выбрали. У страницы нет адреса для загрузки и во время работы она не делает ни одного сетевого запроса.

Откройте страницу, отключите интернет — трассировка продолжит работать. Это самая простая демонстрация того, что ничего не покидает ваше устройство.

Частые вопросы

Это настоящий вектор или JPG, засунутый внутрь SVG?

Настоящий вектор. Картинка анализируется, у каждой области цвета вычисляется контур, и эти контуры записываются как пути SVG. Никакого растра внутри файла нет вообще. Результат открывается в Illustrator, Inkscape, Affinity или Figma, и отдельные фигуры в нём можно выделять, двигать и перекрашивать. Второй подход — обернуть исходный растр в контейнер SVG — даёт файл с правильным расширением, который при увеличении размывается ровно так же, как исходный JPG. Здесь так не делают.

А с фотографией сработает?

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

А с чем работает хорошо?

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

Что делают настройки «Цвета» и «Детализация»?

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

Зачем нужна опция «Не обводить фон»?

Логотип, сохранённый как JPG, приезжает лежащим на белом прямоугольнике, и этот прямоугольник к логотипу не относится. Обведённый, он становится самой большой фигурой в файле, с дыркой на месте каждой буквы, и не даёт положить результат ни на какой фон, кроме белого. Опция находит цвет, который преобладает по краям картинки, и не обводит его — получается прозрачный SVG.

Почему с включённой опцией «Убрать крапинки» фигур становится меньше?

JPG логотипа не идеально плоский. Сжатие превращает границу между двумя цветами в тонкую полосу промежуточных оттенков, и каждый такой оттенок становится отдельным цветовым слоем, усыпанным островками в один-два пикселя. При обычном размере их не видно, но это большая часть фигур и большая часть веса файла. Обычно разница — между 4 КБ и 40 КБ при одинаковом виде.

Загружаются ли мои изображения на сервер?

Нет. Трассировка выполняется в вашем браузере, на JavaScript, над выбранным вами файлом. У страницы нет адреса для загрузки и она не делает ни одного сетевого запроса во время работы: откройте её, отключите интернет — обводка продолжит работать.

Почему обведённая версия не совпадает с оригиналом в точности?

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

Какие форматы принимаются и какого размера?

JPG, JPEG, PNG, WebP, GIF и BMP до 25 МБ. Тип определяется по первым байтам файла, а не по расширению в имени. Очень большие картинки обводятся в уменьшенном рабочем размере, потому что детализация мельче различимой глазом только утяжеляет файл: в самом SVG при этом остаются исходные размеры, а у SVG собственного разрешения и нет.

Результат можно потом редактировать?

Да, во многом ради этого всё и делается. Каждый цвет становится отдельным путём, поэтому логотип можно перекрасить, лишнюю фигуру удалить, а один элемент вытащить и использовать сам по себе. У фигур с отверстиями — середина буквы «О», просвет в «А» — используется правило заливки even-odd, благодаря которому дырка остаётся дыркой в любом редакторе.

Об этом конвертере

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

WebP в JPG

Превратите .webp в .jpg, который откроет любая программа.

Инструменты для изображений

JFIF в JPG

Файлы .jfif в обычные .jpg без потери качества.

Инструменты для изображений

Ещё в разделе «Инструменты для изображений» Все инструменты