Skip to content

JanMisker/svg.pathmod.js

Repository files navigation

svg.pathmod.js

A plugin for the svgdotjs.github.io library to modify SVG paths. The core of this plugin is based on simplify-js (c) 2017, Vladimir Agafonkin

Get Started

npm install svg.pathmod.js

Usage

If you don't see image below look at this page on https://janmisker.github.io/svg.pathmod.js/, because inline SVG might be disabled.

Quickest to just show it. First image is a path with 133 points, for example drawn by user. Second image is the simplified version of that path.

var svg = SVG().addTo('#drawing').size(100,100)
var path = svg.path(....) // create a path
path.simplify(1, true)

The simplified version has only 16 points, making it much more lightweight, and it also looks better. There are of course parameters, for example using a tolerance of 5 and not employing the radial distance algorithm this is the result:

path.simplify(5, false)
This results in a path consisting of just 6 points. Of course it depends on your use case what is an acceptable simplification.

Destructive modification

Do note that the path is modified in place, if you need to keep hold of the existing path make sure to clone it first.

Licence

svg.pathmod.js is licensed under the terms of the MIT License.

Dependencies

This module requires svg.js >= v3.0.12

About

Modify SVG paths as plugin to svg.js

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published