Scour - An SVG Optimizer / Cleaner
Find a file
Eduard Braun cc592c8e8a Improve and fix behaviour when collapsing straight paths segments (#146)
* Do not collapse straight path segments in paths that have intermediate markers (see #145). The intermediate nodes might be unnecessary for the shape of the path, but their markers would be lost.
* Collapse subpaths of moveto `m` and lineto `l` commands if they have the same direction (before we only collapsed horizontal/vertical `h`/`v` lineto commands)
* Attempt to collapse lineto `l` commands into a preceding moveto `m` command (these are then called "implicit lineto commands")
* Preserve empty path segments if they have `stroke-linecap` set to `round` or `square`. They render no visible line but a tiny dot or square.
2017-05-18 00:53:25 +02:00
scour Improve and fix behaviour when collapsing straight paths segments (#146) 2017-05-18 00:53:25 +02:00
unittests Improve and fix behaviour when collapsing straight paths segments (#146) 2017-05-18 00:53:25 +02:00
.gitignore initial source import (v0.26) and packaging 2013-10-22 16:31:42 +02:00
.travis.yml Add sudo: false to .travis.yml for faster execution of jobs 2017-02-19 18:06:57 +01:00
CONTRIBUTING.md Add CONTRIBUTING.md with some (hopefully) useful pointers 2016-09-18 22:36:21 +02:00
HISTORY.md Update HISTORY.md 2016-11-27 19:10:29 +01:00
LICENSE initial source import (v0.26) and packaging 2013-10-22 16:31:42 +02:00
Makefile Update Makefile 2016-09-17 17:09:35 +02:00
README.md Update README.md 2016-09-17 16:28:13 +02:00
scour.sublime-project initial source import (v0.26) and packaging 2013-10-22 16:31:42 +02:00
setup.py Order imports as suggested by PEP 8 2016-09-15 21:56:36 +02:00
testcss.py Some whitespace fixes to make newer versions of flake8 happy 2016-11-27 18:52:39 +01:00
testscour.py Improve and fix behaviour when collapsing straight paths segments (#146) 2017-05-18 00:53:25 +02:00
tox.ini Add Python 3.6 to tests and simplify .travis.yml by using 'tox-travis' 2017-02-19 18:04:36 +01:00

Scour

PyPI Build status Codecov


Scour is a Python tool that takes an SVG file and produces a cleaner and more concise file. It is intended to be used after exporting to SVG with a GUI editor, such as Inkscape or Adobe Illustrator.

Scour is open-source and licensed under Apache License 2.0.

Scour was originally developed by Jeff "codedread" Schiller and Louis Simard. Development is now maintained by Tobias "oberstet" Oberstein.

This Github repository is the official one. The official website as well as older packages can be found at www.codedread.com/scour.

Installation

Scour requires Python 2.7 or 3.3+. Further, for installation, pip should be used.

To install the latest release of Scour from PyPI:

pip install scour

To install the latest trunk version (which might be broken!) from GitHub:

pip install https://github.com/codedread/scour/archive/master.zip

Usage

Standard:

scour -i input.svg -o output.svg

Better (for older versions of Internet Explorer):

scour -i input.svg -o output.svg --enable-viewboxing

Maximum scrubbing:

scour -i input.svg -o output.svg --enable-viewboxing --enable-id-stripping \
  --enable-comment-stripping --shorten-ids --indent=none

Maximum scrubbing and a compressed SVGZ file:

scour -i input.svg -o output.svgz --enable-viewboxing --enable-id-stripping \
  --enable-comment-stripping --shorten-ids --indent=none