english | русский
SVG Optimizer – это инструмент для оптимизации векторной графики в формате SVG, написанный на Node.js.
SVG-файлы, особенно экспортированные из редакторов, содержат много избыточной и бесполезной информации, комментариев, скрытых элементов, неоптимальные или стандартные значения и другой мусор, удаление которого безопасно и не влияет на конечный вид изображения.
SVGO имеет расширяемую архитектуру, в которой почти каждая оптимизация является отдельным расширением.
Что у нас есть:
| Plugin | Description |
|---|---|
| cleanupAttrs | удаление переносов строк и лишних пробелов |
| inlineStyles | перенос стилей из элементов <style> в атрибуты style |
| removeDoctype | удаление doctype |
| removeXMLProcInst | удаление XML-инструкций |
| removeComments | удаление комментариев |
| removeMetadata | удаление <metadata> |
| removeTitle | удаление <title> |
| removeDesc | удаление <desc> |
| removeUselessDefs | удаление элементов в <defs> без id |
| removeXMLNS | удаление атрибута xmlns (для заинлайненных svg, выключено по умолчанию) |
| removeEditorsNSData | удаление пространств имён различных редакторов, их элементов и атрибутов |
| removeEmptyAttrs | удаление пустых атрибутов |
| removeHiddenElems | удаление скрытых элементов |
| removeEmptyText | удаление пустых текстовых элементов |
| removeEmptyContainers | удаление пустых элементов-контейнеров |
| removeViewBox | удаление атрибута viewBox, когда это возможно |
| cleanupEnableBackground | удаление или оптимизация атрибута enable-background, когда это возможно |
| minifyStyles | уменьшает содержимое элементов <style> с помощью CSSO. |
| convertStyleToAttrs | конвертирование стилей в атрибуте style в отдельные svg-атрибуты |
| convertColors | конвертирование цветовых значений: из rgb() в #rrggbb, из #rrggbb в #rgb |
| convertPathData | конвертирование данных Path в относительные или абсолютные координаты, смотря что |
| convertTransform | схлопывание нескольких трансформаций в одну, конвертирование матриц в короткие алиасы |
| removeUnknownsAndDefaults | удаление неизвестных элементов, контента и атрибутов |
| removeNonInheritableGroupAttrs | удаление ненаследуемых "презентационных" атрибутов групп |
| removeUselessStrokeAndFill | удаление неиспользуемых атрибутов stroke-* и fill-* |
| removeUnusedNS | удаление деклараций неиспользуемых пространств имён |
| prefixIds | добавляет префикс в ID или классы в виде имени файла или произвольной строки |
| cleanupIDs | удаление неиспользуемых и сокращение используемых ID |
| cleanupNumericValues | округление дробных чисел до заданной точности, удаление px как единицы |
| cleanupListOfValues | округление числовых значений в атрибутах со списком чисел, таких как viewBox |
| moveElemsAttrsToGroup | перемещение совпадающих атрибутов у всех элементов внутри группы <g> |
| moveGroupAttrsToElems | перемещение некоторых атрибутов группы на элементы внутри |
| collapseGroups | схлопывание бесполезных групп <g> |
| removeRasterImages | удаление растровых изображений (выключено по умолчанию) |
| mergePaths | склеивание нескольких Path в одну кривую |
| convertShapeToPath | конвертирование простых форм в Path |
| sortAttrs | сортировка атрибутов элементов для удобочитаемости (выключено по умолчанию) |
| removeDimensions | удаляет атрибуты width/height при наличии viewBox (противоречит removeViewBox — плагин должен быть выключен) (выключено по умолчанию) |
| removeAttrs | удаляет атрибуты по указанному паттерну (выключено по умолчанию) |
| removeAttributesBySelector | удаляет атрибуты по CSS-селектору (выключено по умолчанию) |
| removeElementsByAttr | удаляет элементы по указанным ID или классам (выключено по умолчанию) |
| addClassesToSVGElement | добавляет имена классов корневому элементу <svg> (выключено по умолчанию) |
| addAttributesToSVGElement | добавляет атрибуты корневому элементу <svg> (выключено |
| removeOffCanvasPaths | удаляет элементы вне отрисовываемой области (выключено по умолчанию) |
| removeStyleElement | удаляет элементы <style> (выключено по умолчанию) |
| removeScriptElement | удаляет элементы <script> (выключено по умолчанию) |
| reusePaths | Заменяет дублирующиеся элементы ссылками (выключено по умолчанию) |