convertpath
TypeScript icon, indicating that this package has built-in type declarations

1.3.0 • Public • Published

convertPath npm

A node lib to convert svg shape elements into path svg elements.

Install

npm install convertpath

What it can do

convertpath has a plugin-based architecture, so almost every optimization is a separate plugin.

Today we have:

Plugin Description
convertUseToGroup convert defs and symbol elements into group svg elements.
convertShapeToPath convert svg shape elements into path svg elements.
removeGroups move some group and move some group attributes to the contained elements
convertTransfromforPath remove transform attribute and convert path data to relative
removeGradient remove gradient if reference via url('#id')
viewBoxTransform remove width/height attributes and reset ViewBox

Usage

const SVGParser = require('convertpath')

const parse = SVGParser.parse('./test/test.svg', {
  plugins: [
    {
      convertUseToGroup: true, // at first
    },
    {
      convertShapeToPath: true,
    },
    {
      removeGroups: true,
    },
    {
      convertTransfromforPath: true,
    },
    {
      viewBoxTransform: true, // at last
    },
  ],
  size: 1000,
})

const result = parse.toSimpleSvg()
console.log(result)

const paths = parse.getPathAttributes()
console.log(paths)

/**
 * '<circle cx="500" cy="500" r="20" fill="red"/>'
 */
console.log(parse.toSimpleSvg())

/**
 * '<path d="M500,500,m-20,0,a20,20,0,1,0,40,0,a20,20,0,1,0,-40,0,Z" fill="red"/>'
 */

API

SVGParser.parse(filename)

SVGParser.parseStr(svgString)

SVGParser.parseNode(node)

parse.toSimpleSvg()

parse.getPathAttributes

WIKI

SVG WIKI

CHANGELOG

CHANGELOG.md

Special thanks

Package Sidebar

Install

npm i convertpath

Weekly Downloads

5

Version

1.3.0

License

ISC

Unpacked Size

409 kB

Total Files

64

Last publish

Collaborators

  • pingfanren
  • linzpeng