Сжать SVG
SVG, экспортированный из Figma, Illustrator или Sketch, обычно содержит в 2–5 раз больше разметки, чем нужно: пространства имён редактора, комментарии, пустые группы, избыточные преобразования и координаты с шестью знаками после запятой. Этот инструмент прогоняет ваш SVG через обработку в стиле SVGO, убирая лишнее и сохраняя при этом результат пиксель в пиксель.
Как сжать SVG
-
1
Вставьте или загрузите свой SVG
Принимает необработанный текст XML или файл .svg.
-
2
Выберите уровень оптимизации
Безопасный (удалить комментарии и метаданные редактора), агрессивный (свернуть группы, округлить координаты, объединить пути) или настраиваемый.
-
3
Просмотрите разницу
Сравните количество байтов до и после и просмотрите результат визуализации, чтобы убедиться, что ничего не изменилось визуально.
-
4
Скопируйте или скачайте
Вставьте оптимизированный SVG прямо в свой код или сохраните как файл.
Что раздувает SVG
Откройте SVG, экспортированный из Figma, в текстовом редакторе, и вы обычно увидите:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="..."
xmlns:sketch="..." width="24.000000" height="24.000000"
viewBox="0 0 24.000000 24.000000" ...>
<!-- Generator: Figma ... -->
<title>icon</title>
<desc>Created with Figma</desc>
<g id="Page-1" stroke="none" fill="none" fill-rule="evenodd">
<g id="icon" transform="translate(0.000000, 0.000000)">
<path d="M12.000000,2.000000 L..." fill="#000000"/>
</g>
</g>
</svg>
Почти каждую строку можно удалить. Для отображения нужны только svg, viewBox и path.
Что удаляет оптимизатор
| Что удаляется | Почему это безопасно |
|---|---|
| XML-комментарии | Никогда не отображаются |
| Пространства имён редактора (sketch, figma) | Не используются браузерами |
<title> / <desc> (по желанию) |
Текст для доступности, сохраните, если он несёт смысл |
Пустые группы <g> |
Не дают визуального эффекта |
| Значения атрибутов по умолчанию | Браузеры в любом случае используют значения по умолчанию |
| Тождественные преобразования | translate(0,0) ничего не делает |
| Десятичные знаки в координатах | 3 знака после запятой на экране выглядят одинаково |
| Неиспользуемые идентификаторы | Сохраняйте только те ID, на которые есть ссылки в других местах |
Подводные камни
- Не удаляйте идентификаторы, на которые ссылаются CSS или
url(#...)в заливках, масках и фильтрах. Агрессивный режим может сломать градиенты. - Сохраняйте
viewBox. Без него SVG не будет адаптивно масштабироваться. - Сохраняйте
<title>, если вы используете его для доступности (программы чтения с экрана его озвучивают). - Избегайте сворачивания экземпляров
<use>. Оптимизатор может встроить их и потерять исходный, эталонный шаблон.
Когда сжатие действительно экономит байты
SVG, это текст, а значит, gzip на сервере уже убирает значительную часть избыточности. SVG, который в несжатом виде уменьшается с 4 КБ до 1 КБ, при передаче по сети может сократиться лишь с 1,2 КБ до 0,7 КБ. И всё же это того стоит, к тому же более компактный исходник легче читать.
Часто задаваемые вопросы
В безопасном режиме, нет. Агрессивный режим может удалить идентификаторы, на которые ссылаются анимации CSS или SMIL. Если в вашем SVG есть анимация, используйте безопасный режим или вручную внесите нужные ID в белый список.
Экспорт Figma/Illustrator обычно сокращается на 50-80%. Рукописный SVG уже компактен и обычно теряет только 10-20%.
По умолчанию да, атрибуты <title>, <desc> и aria-* сохраняются. Вы можете удалить их, если SVG является чисто декоративным, а окружающий HTML предоставляет метку.
Да. Атрибут xmlns сохраняется, поскольку он необходим при вставке SVG непосредственно в HTML. Встроенный SVG обычно является самым быстрым способом доставки небольших иконок.
Сопутствующие инструменты
Сжать GIF
Уменьшайте анимированные GIF прямо в браузере: снижайте размеры, оставляйте меньше кадров и настраивайте качество кодирования. Проверьте петлю перед скачиванием.
Конструктор тир-листов
Создайте приватный тир-лист из текста и локальных изображений. Настройте уровни, распределите элементы мышью или клавиатурой и экспортируйте в JSON, PNG или SVG.
Генератор надписей граффити
Создавайте надписи в стилях тег, баббл, блок, трафарет, неон и вайлд. Настраивайте цвета и экспортируйте PNG или SVG прямо в браузере.
Конвертер JPG в Word
Конвертируйте JPG-фото или скриншот текста в редактируемый документ Word. Инструмент считывает слова с помощью OCR и раскладывает их, чтобы вы могли переписать, отформатировать и переиспользовать их.
Генератор миллиметровой бумаги
Создавайте бумагу в клетку для печати онлайн: выберите сетку или точки, задайте шаг в мм, укажите A4 или Letter и свой цвет линий, затем распечатайте или скачайте чёткий SVG.
Генератор линованной бумаги
Создавайте линованную бумагу для печати бесплатно. Выберите узкую, широкую или стандартную линовку, задайте расстояние между строками в мм, размер листа и линию поля, затем распечатайте или скачайте SVG.
Инструмент доступен на других языках
- Comprimir SVG [ES]
- Nén định dạng SVG [VI]
- Comprimir SVG [PT]
- Kompresi SVG [ID]
- SVG komprimieren [DE]
- ضغط SVG [AR]
- Kompresuj SVG [PL]
- SVG를 압축합니다 [KO]
- SVGを圧縮する [JA]
- บีบอัดไฟล์ SVG [TH]
- Compresser SVG [FR]
- Comprimeer SVG [NL]
- Komprimera SVG [SV]
- Compress SVG [EN]
- Comprimi SVG [IT]
- SVG Sıkıştır [TR]
- 压缩 SVG [ZH]