english | русский
SVG Optimizer – это инструмент для оптимизации векторной графики в формате SVG, написанный на Node.js.
SVG-файлы, особенно экспортированные из редакторов, содержат много избыточной и бесполезной информации, комментариев, скрытых элементов, неоптимальные или стандартные значения и другой мусор, удаление которого безопасно и не влияет на конечный вид изображения.
SVGO имеет расширяемую архитектуру, в которой почти каждая оптимизация является отдельным расширением.
Что у нас есть:
Plugin | Description | Default |
---|---|---|
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 |или enableBackground |
выключено |
moveElemsAttrsToGroup | перемещение совпадающих атрибутов у всех элементов внутри группы <g> |
включен |
moveGroupAttrsToElems | перемещение некоторых атрибутов группы на элементы внутри | включен |
collapseGroups | схлопывание бесполезных групп <g> |
включен |
removeRasterImages | удаление растровых изображений | выключено |
mergePaths | склеивание нескольких Path в одну кривую | включен |
convertShapeToPath | конвертирование простых форм в Path | включен |
convertEllipseToCircle | конвертирование вырожденного эллипса <ellipse> в круг <circle> |
включен |
sortAttrs | сортировка атрибутов элементов для удобочитаемости | выключено |
sortDefsChildren | сортировка детей <defs> для лучшей компрессии |
включен |
removeDimensions | удаляет атрибуты width/height при наличии viewBox (противоречит removeViewBox — плагин должен быть выключен) | выключено |
removeAttrs | удаляет атрибуты по указанному паттерну | выключено |
removeAttributesBySelector | удаляет атрибуты по CSS-селектору | выключено |
removeElementsByAttr | удаляет элементы по указанным ID или классам | выключено |
addClassesToSVGElement | добавляет имена классов корневому элементу <svg> |
выключено |
addAttributesToSVGElement | добавляет атрибуты корневому элементу <svg> |
выключено |
removeOffCanvasPaths | удаляет элементы вне отрисовываемой области | выключено |
removeStyleElement | удаляет элементы <style> |
выключено |
removeScriptElement | удаляет элементы <script> |
выключено |
reusePaths | Заменяет дублирующиеся элементы ссылками | выключено |