Минутку...(/)
В данный момент мы оптимизируем ваши изображения. Пожалуйста, подождите немного, пока мы обеспечим высокое качество результатов.
Отлично, мы успешно сжали ваши изображения.
Изображения оптимизированы.
В данный момент мы оптимизируем ваши изображения. Пожалуйста, подождите немного, пока мы обеспечим высокое качество результатов.
Изображения оптимизированы.
Откройте SVG в Блокноте, и вы увидите всё содержимое: теги, числа, текст. В этом и состоит суть формата. Нет пикселей, нет фотографии — только инструкции для рисования фигур. Это важно, потому что определяет, что здесь значит «сжатие». Ничего не сжимается и не искажается — просто удаляется избыточный текст, а само изображение остаётся нетронутым.
Почти ничего из этого — не само изображение. Экспортируйте логотип из Illustrator, Figma или Inkscape, и файл придёт с «бумагами» редактора: комментарий генератора, DOCTYPE, который никому не нужен с 2008 года, объявление XML, блок метаданных с описанием документа в RDF, имена слоёв и блок стилей, полный неиспользуемых классов. В протестированном нами реальном логотипе всё это составляло примерно две трети файла. Сами фигуры были лишь малой частью.
Далее идут числа. Редакторы записывают координаты с полной плавающей точкой, поэтому прямоугольник, стоящий на 10 и шириной 180, сохраняется как 10.000000 и 180.00000000. Умножьте это на каждую точку в каждом пути — и только одни десятичные знаки могут превысить размер самого рисунка.
Это тот момент, о котором многие зря беспокоятся. У SVG нет разрешения. Он отрисовывается заново в любом размере, в котором отображается — будь то фавиконка 16 пикселей или билборд. Удаление блока метаданных никак не влияет на это. Полученный файл масштабируется точно так же, как и загруженный, выглядит идентично на любом размере и по-прежнему полностью редактируется в вашей программе.
Очистка проводится максимально осторожно. Удаляется только то, что не влияет на отображение.
| Удаляется | Остаётся |
|---|---|
| Комментарии редактора и строки генератора | Все фигуры, пути и кривые |
| Блок метаданных и его пространства имён RDF | Цвета, градиенты и прозрачность |
| DOCTYPE и объявление XML | Текстовые элементы и шрифты |
| Определения, на которые никто не ссылается | Используемые фильтры, маски и обтравочные пути |
| Пустые группы и слои | Трансформации и viewBox |
| Лишние знаки после запятой в координатах | Всё, что влияет на внешний вид |
SVG обычно — это логотип или иконка, то есть элемент, который находится в шапке каждой страницы сайта и загружается раньше всего остального. Фотографии грузятся поздно и лениво, а иконки — нет. Сэкономить несколько килобайт на логотипе в шапке важнее для скорости страницы, чем столько же на изображении в середине статьи, потому что браузер ждёт именно шапку, прежде чем начать отрисовку.
Очистка укорачивает внутренние id-атрибуты в файле. Все внутренние ссылки в SVG обновляются, так что градиенты, маски и обтравочные пути продолжают работать, и изображение отображается как прежде. Но про внешний код сервис не знает. Если ваш SVG используется в спрайте и на него ссылаются другие страницы, или если к элементу обращается CSS или скрипт по id, эти моменты стоит проверить после замены файла. Для обычного логотипа или экспортированной иконки, а это большинство SVG, ничего проверять не нужно.
Иногда SVG — это не совсем вектор. Если поместить фотографию на холст в Illustrator и экспортировать как SVG, изображение встраивается как длинная строка base64 внутри XML. Файл может весить два мегабайта и содержать всего одну фигуру. Очистка разметки не затрагивает этот блок, потому что это не разметка. Если ваш файл почти не уменьшился и изначально содержал фото — вот причина. Решение: выньте изображение и сожмите его отдельно как JPEG или PNG.
Нет опций, уровней сжатия и вкладок с настройками. Загружаете файл — получаете очищенный. Несколько файлов работают так же: можно скачивать по одному по мере готовности или весь набор архивом ZIP.
Файлы передаются по зашифрованному соединению, очищаются и удаляются с сервера через час. Ничего не сохраняется и не используется для других целей.
Работаете с логотипом, который есть и в растровом виде? Сжать PNG — для прозрачной версии, а Сжать WebP — для современной. Если в SVG оказался встроенный снимок, Сжать JPG — это то, куда его стоит отправить.