md β’ Lines: 205[english](https://github.com/svg/svgo/blob/master/README.md) | **ΡΡΡΡΠΊΠΈΠΉ**
- - -
<img src="https://svg.github.io/svgo-logo.svg" width="200" height="200" alt="logo"/>
## SVGO [](https://npmjs.org/package/svgo) [](https://travis-ci.org/svg/svgo) [](https://coveralls.io/r/svg/svgo?branch=master)
**SVG** **O**ptimizer β ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²Π΅ΠΊΡΠΎΡΠ½ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ SVG, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Node.js.

## ΠΠ°ΡΠ΅ΠΌ?
SVG-ΡΠ°ΠΉΠ»Ρ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΠΉ ΠΈ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π², ΡΠΊΡΡΡΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π½Π΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ»ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΌΡΡΠΎΡ, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΠΈ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
## ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
SVGO ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΡΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ.
Π§ΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ:
| Plugin | Description | Default |
| ------ | ----------- | ------- |
| [cleanupAttrs](https://github.com/svg/svgo/blob/master/plugins/cleanupAttrs.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΎΠ² ΡΡΡΠΎΠΊ ΠΈ Π»ΠΈΡΠ½ΠΈΡ
ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [inlineStyles](https://github.com/svg/svgo/blob/master/plugins/inlineStyles.js) | ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΡΡΠΈΠ»Π΅ΠΉ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² `<style>` Π²Β Π°ΡΡΠΈΠ±ΡΡΡ `style` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeDoctype](https://github.com/svg/svgo/blob/master/plugins/removeDoctype.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ doctype | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeXMLProcInst](https://github.com/svg/svgo/blob/master/plugins/removeXMLProcInst.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ XML-ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeComments](https://github.com/svg/svgo/blob/master/plugins/removeComments.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeMetadata](https://github.com/svg/svgo/blob/master/plugins/removeMetadata.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ `<metadata>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeTitle](https://github.com/svg/svgo/blob/master/plugins/removeTitle.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ `<title>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeDesc](https://github.com/svg/svgo/blob/master/plugins/removeDesc.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ `<desc>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeUselessDefs](https://github.com/svg/svgo/blob/master/plugins/removeUselessDefs.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² `<defs>` Π±Π΅Π· `id` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeXMLNS](https://github.com/svg/svgo/blob/master/plugins/removeXMLNS.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° xmlns (Π΄Π»Ρ Π·Π°ΠΈΠ½Π»Π°ΠΉΠ½Π΅Π½Π½ΡΡ
svg) | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeEditorsNSData](https://github.com/svg/svgo/blob/master/plugins/removeEditorsNSData.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΡΠ½ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠ², ΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeEmptyAttrs](https://github.com/svg/svgo/blob/master/plugins/removeEmptyAttrs.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡΡΡΡΡ
Π°ΡΡΠΈΠ±ΡΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeHiddenElems](https://github.com/svg/svgo/blob/master/plugins/removeHiddenElems.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΊΡΡΡΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeEmptyText](https://github.com/svg/svgo/blob/master/plugins/removeEmptyText.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡΡΡΡΡ
ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeEmptyContainers](https://github.com/svg/svgo/blob/master/plugins/removeEmptyContainers.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡΡΡΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeViewBox](https://github.com/svg/svgo/blob/master/plugins/removeViewBox.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° `viewBox`, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [cleanupEnableBackground](https://github.com/svg/svgo/blob/master/plugins/cleanupEnableBackground.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠ° `enable-background`, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [minifyStyles](https://github.com/svg/svgo/blob/master/plugins/minifyStyles.js) | ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² `<style>` Ρ ΠΏΠΎΠΌΠΎΡΡΡ [CSSO](https://github.com/css/csso). | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertStyleToAttrs](https://github.com/svg/svgo/blob/master/plugins/convertStyleToAttrs.js) | ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΠ»Π΅ΠΉ Π² Π°ΡΡΠΈΠ±ΡΡΠ΅ `style` Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ svg-Π°ΡΡΠΈΠ±ΡΡΡ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertColors](https://github.com/svg/svgo/blob/master/plugins/convertColors.js) | ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠΎΠ²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ: ΠΈΠ· `rgb()` Π² `#rrggbb`, ΠΈΠ· `#rrggbb` Π² `#rgb` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertPathData](https://github.com/svg/svgo/blob/master/plugins/convertPathData.js) | ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
Path Π² ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈΠ»ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ, ΡΠΌΠΎΡΡΡ ΡΡΠΎ \|ΠΊΠΎΡΠΎΡΠ΅; ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΈΡ
ΡΠΈΠΏΠΎΠ² ΡΠ΅Π³ΠΌΠ΅Π½ΡΠΎΠ² Π² Π΄ΡΡΠ³ΠΈΠ΅; ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π½ΡΠΆΠ½ΡΡ
ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ; ΡΠΌΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertTransform](https://github.com/svg/svgo/blob/master/plugins/convertTransform.js) | ΡΡ
Π»ΠΎΠΏΡΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΉ Π² ΠΎΠ΄Π½Ρ, ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡ Π² ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ Π°Π»ΠΈΠ°ΡΡ \|ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeUnknownsAndDefaults](https://github.com/svg/svgo/blob/master/plugins/removeUnknownsAndDefaults.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeNonInheritableGroupAttrs](https://github.com/svg/svgo/blob/master/plugins/removeNonInheritableGroupAttrs.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π½Π°ΡΠ»Π΅Π΄ΡΠ΅ΠΌΡΡ
"ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ
" Π°ΡΡΠΈΠ±ΡΡΠΎΠ² Π³ΡΡΠΏΠΏ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeUselessStrokeAndFill](https://github.com/svg/svgo/blob/master/plugins/removeUselessStrokeAndFill.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π°ΡΡΠΈΠ±ΡΡΠΎΠ² stroke-* ΠΈ fill-* | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeUnusedNS](https://github.com/svg/svgo/blob/master/plugins/removeUnusedNS.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠΉ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΡΠ½ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [prefixIds](https://github.com/svg/svgo/blob/master/plugins/prefixIds.js) | Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΏΡΠ΅ΡΠΈΠΊΡ Π² ID ΠΈΠ»ΠΈ ΠΊΠ»Π°ΡΡΡ Π²Β Π²ΠΈΠ΄Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [cleanupIDs](https://github.com/svg/svgo/blob/master/plugins/cleanupIDs.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
ID | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [cleanupNumericValues](https://github.com/svg/svgo/blob/master/plugins/cleanupNumericValues.js) | ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ Π΄ΡΠΎΠ±Π½ΡΡ
ΡΠΈΡΠ΅Π» Π΄ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ `px` ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΈΡΡ \|ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [cleanupListOfValues](https://github.com/svg/svgo/blob/master/plugins/cleanupListOfValues.js) | ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ ΡΠΈΡΠ»ΠΎΠ²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π²Β Π°ΡΡΠΈΠ±ΡΡΠ°Ρ
ΡΠΎΒ ΡΠΏΠΈΡΠΊΠΎΠΌ ΡΠΈΡΠ΅Π», ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ `viewBox` \|ΠΈΠ»ΠΈ `enableBackground` | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [moveElemsAttrsToGroup](https://github.com/svg/svgo/blob/master/plugins/moveElemsAttrsToGroup.js) | ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΡ
Π°ΡΡΠΈΠ±ΡΡΠΎΠ² Ρ Π²ΡΠ΅Ρ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π²Π½ΡΡΡΠΈ Π³ΡΡΠΏΠΏΡ `<g>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [moveGroupAttrsToElems](https://github.com/svg/svgo/blob/master/plugins/moveGroupAttrsToElems.js) | ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
Π°ΡΡΠΈΠ±ΡΡΠΎΠ² Π³ΡΡΠΏΠΏΡ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π²Π½ΡΡΡΠΈ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [collapseGroups](https://github.com/svg/svgo/blob/master/plugins/collapseGroups.js) | ΡΡ
Π»ΠΎΠΏΡΠ²Π°Π½ΠΈΠ΅ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΡΡ
Π³ΡΡΠΏΠΏ `<g>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeRasterImages](https://github.com/svg/svgo/blob/master/plugins/removeRasterImages.js) | ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΡΡΡΠΎΠ²ΡΡ
ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [mergePaths](https://github.com/svg/svgo/blob/master/plugins/mergePaths.js) | ΡΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Path Π² ΠΎΠ΄Π½Ρ ΠΊΡΠΈΠ²ΡΡ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertShapeToPath](https://github.com/svg/svgo/blob/master/plugins/convertShapeToPath.js) | ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΡ
ΡΠΎΡΠΌ Π² Path | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [convertEllipseToCircle](https://github.com/svg/svgo/blob/master/plugins/convertEllipseToCircle.js) | ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΡΠΎΠΆΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π»ΠΈΠΏΡΠ° `<ellipse>` Π² ΠΊΡΡΠ³ `<circle>` | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [sortAttrs](https://github.com/svg/svgo/blob/master/plugins/sortAttrs.js) | ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [sortDefsChildren](https://github.com/svg/svgo/blob/master/plugins/sortDefsChildren.js) | ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π΄Π΅ΡΠ΅ΠΉ `<defs>` Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΡΠ΅ΡΡΠΈΠΈ | `Π²ΠΊΠ»ΡΡΠ΅Π½` |
| [removeDimensions](https://github.com/svg/svgo/blob/master/plugins/removeDimensions.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ Π°ΡΡΠΈΠ±ΡΡΡ width/height ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ viewBox (ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ removeViewBoxΒ βΒ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π²ΡΠΊΠ»ΡΡΠ΅Π½) | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeAttrs](https://github.com/svg/svgo/blob/master/plugins/removeAttrs.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ Π°ΡΡΠΈΠ±ΡΡΡ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeAttributesBySelector](https://github.com/svg/svgo/blob/master/plugins/removeAttributesBySelector.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ Π°ΡΡΠΈΠ±ΡΡΡ ΠΏΠΎ CSS-ΡΠ΅Π»Π΅ΠΊΡΠΎΡΡ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeElementsByAttr](https://github.com/svg/svgo/blob/master/plugins/removeElementsByAttr.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ID ΠΈΠ»ΠΈ ΠΊΠ»Π°ΡΡΠ°ΠΌ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [addClassesToSVGElement](https://github.com/svg/svgo/blob/master/plugins/addClassesToSVGElement.js) | Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΠΌΠ΅Π½Π° ΠΊΠ»Π°ΡΡΠΎΠ² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ `<svg>` | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [addAttributesToSVGElement](https://github.com/svg/svgo/blob/master/plugins/addAttributesToSVGElement.js) | Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π°ΡΡΠΈΠ±ΡΡΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ `<svg>` | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeOffCanvasPaths](https://github.com/svg/svgo/blob/master/plugins/removeOffCanvasPaths.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π²Π½Π΅ ΠΎΡΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeStyleElement](https://github.com/svg/svgo/blob/master/plugins/removeStyleElement.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ `<style>` | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [removeScriptElement](https://github.com/svg/svgo/blob/master/plugins/removeScriptElement.js) | ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ `<script>` | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
| [reusePaths](https://github.com/svg/svgo/blob/master/plugins/reusePaths.js) | ΠΠ°ΠΌΠ΅Π½ΡΠ΅Ρ Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΠ΅ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ <path> ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ <use> | `Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ` |
Π₯ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°Π±ΠΎΡΡ ΠΈ ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΏΠ»Π°Π³ΠΈΠ½? [ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π΄Π°!](https://github.com/svg/svgo/blob/master/docs/how-it-works/ru.md)
## ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
```sh
$ [sudo] npm install -g svgo
```
## ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅:
### ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ°
```
ΠΠ°ΠΏΡΡΠΊ:
svgo [OPTIONS] [ARGS]
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
-h, --help : ΠΠΎΠΌΠΎΡΡ
-v, --version : ΠΠ΅ΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
-i INPUT, --input=INPUT : ΠΡ
ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΠΉΠ», "-" Π΄Π»Ρ STDIN
-s STRING, --string=STRING : ΠΡ
ΠΎΠ΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ° SVG
-f FOLDER, --folder=FOLDER : ΠΡ
ΠΎΠ΄Π½Π°Ρ ΠΏΠ°ΠΏΠΊΠ°, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΈΒ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ *.svg
-o OUTPUT, --output=OUTPUT : ΠΡΡ
ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠ° (ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ ΡΒ Π²Ρ
ΠΎΠ΄Π½ΡΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ), "-" Π΄Π»Ρ STDOUT
-p PRECISION, --precision=PRECISION : Π§ΠΈΡΠ»ΠΎ ΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΎΠΉ, ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²
--config=CONFIG : Π€Π°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠ° JSON) Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΌΠ΅Π½Ρ Π½Π°ΡΡΡΠΎΠ΅ΠΊ
--disable=PLUGIN : ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΏΠΎΒ ΠΈΠΌΠ΅Π½ΠΈ, "--disable=PLUGIN1,PLUGIN2" Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²
--enable=PLUGIN : ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΏΠΎΒ ΠΈΠΌΠ΅Π½ΠΈ, "--enable=PLUGIN3,PLUGIN4" Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ²
--datauri=DATAURI : Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²Β Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ Data URI (base64, URI encoded ΠΈΠ»ΠΈ unencoded)
--multipass : ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΉ
--pretty : Π£Π΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠ΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ SVG
--indent=INDENT : Π Π°Π·ΠΌΠ΅Ρ ΠΎΡΡΡΡΠΏΠ° Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
-r, --recursive : Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ '-f'. Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ *.svg ΡΠ°ΠΉΠ»Ρ Π²Β ΠΏΠ°ΠΏΠΊΠ°Ρ
.
-q, --quiet : ΠΠΎΠ΄Π°Π²Π»ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ±Β ΠΎΡΠΈΠ±ΠΊΠ°Ρ
--show-plugins : ΠΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ
ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ:
INPUT : ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ --input
```
* Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ:
```sh
$ svgo test.svg
```
ΠΈΠ»ΠΈ:
```sh
$ svgo *.svg
```
```sh
$ svgo test.svg -o test.min.svg
```
```sh
$ svgo test.svg other.svg third.svg
```
```sh
$ svgo test.svg other.svg third.svg -o test.min.svg -o other.min.svg -o third.min.svg
```
* ΡΠΎ STDIN / STDOUT:
```sh
$ cat test.svg | svgo -i - -o - > test.min.svg
```
* Ρ ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ
```sh
$ svgo -f ../path/to/folder/with/svg/files
```
ΠΈΠ»ΠΈ:
```sh
$ svgo -f ../path/to/folder/with/svg/files -o ../path/to/folder/with/svg/output
```
```sh
$ svgo *.svg -o ../path/to/folder/with/svg/output
```
* ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ:
```sh
$ svgo -s '<svg version="1.1">test</svg>' -o test.min.svg
```
ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Ρ Data URI base64:
```sh
$ svgo -s 'data:image/svg+xml;base64,β¦' -o test.min.svg
```
* Ρ SVGZ:
ΠΈΠ· `.svgz` Π² `.svg`:
```sh
$ gunzip -c test.svgz | svgo -i - -o test.min.svg
```
ΠΈΠ· `.svg` Π² `.svgz`:
```sh
$ svgo test.svg -o - | gzip -cfq9 > test.svgz
```
### ΠΡΡΠ³ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ SVGO
* Π²Β Π²ΠΈΠ΄Π΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ - [SVGOMG](https://jakearchibald.github.io/svgomg/)
* ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ Node.js β [examples](https://github.com/svg/svgo/tree/master/examples)
* ΠΊΠ°ΠΊ ΡΠ°ΡΠΊ Π΄Π»Ρ Grunt β [grunt-svgmin](https://github.com/sindresorhus/grunt-svgmin)
* ΠΊΠ°ΠΊ ΡΠ°ΡΠΊ Π΄Π»Ρ Gulp β [gulp-svgmin](https://github.com/ben-eb/gulp-svgmin)
* ΠΊΠ°ΠΊ ΡΠ°ΡΠΊ Π΄Π»Ρ Mimosa β [mimosa-minify-svg](https://github.com/dbashford/mimosa-minify-svg)
* ΠΊΠ°ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠ°ΠΏΠΊΠΈ Π² OSX β [svgo-osx-folder-action](https://github.com/svg/svgo-osx-folder-action)
* ΡΠ΅ΡΠ΅Π· Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ webpack β [image-webpack-loader](https://github.com/tcoopman/image-webpack-loader)
* Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΎΡΠ° Π² Telegram β [svgo_bot](https://github.com/maksugr/svgo_bot)
* ΠΊΠ°ΠΊ ΠΏΠ»Π°Π³ΠΈΠ½ PostCSS - [postcss-svgo](https://github.com/ben-eb/postcss-svgo)
* ΠΊΠ°ΠΊ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Inkscape β [inkscape-svgo](https://github.com/konsumer/inkscape-svgo)
* ΠΊΠ°ΠΊ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Sketch - [svgo-compressor](https://github.com/BohemianCoding/svgo-compressor)
* Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ macOS - [Image Shrinker](https://image-shrinker.com)
* ΠΊΠ°ΠΊ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Rollup - [rollup-plugin-svgo](https://github.com/porsager/rollup-plugin-svgo)
## ΠΠΈΡΠ΅Π½Π·ΠΈΡ ΠΈ ΠΊΠΎΠΏΠΈΡΠ°ΠΉΡΡ
ΠΠ°Π½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΠΎΠ΄ [Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ MIT](https://github.com/svg/svgo/blob/master/LICENSE).
ΠΠΎΠ³ΠΎΡΠΈΠΏ β [ΠΠ³ΠΎΡ ΠΠΎΠ»ΡΡΠ°ΠΊΠΎΠ²](http://xizzzy.ru/).