SVG Cleaner 0.5: leaner, faster, runs on Mac
The world's friendliest SVG batch clean-up program is back with a new major update: it's smaller, faster, goes easy on system resources, and finally runs on Mac.
The major change in this version is a whole new processing backend. The developer of the former, Perl-based, backend of the app left the project last year. So Eugene Raizner rewrote it in C++.
This new backend already has the most important features of its predecessor. Eugene tested it on ca. 20K files, and here are some results:
- on average the new version is 5 to 8 times faster;
- the memory footprint is at least 2 times smaller;
- it's now possible to process 20MB+ large SVG drawings;
- up to 45% excessive markup gets wiped out;
- compression quality is ca. 1—2% worse than with the obsolete Perl backend;
- probability of incorrect processing is estimated as 0.002%.
Thanks to removal of dependency on Perl it was possible to make the installation package for Windows smaller by order of magnitude. It also simplified providing a long anticipated Mac build.
Not only that, the backend can now run as a standalone console application, so you can use SVG Cleaner on a server. There's a caveat though: currently it cannot handle folders and SVGZ files, but that's not for long.
Among further plans Eugene has:
- up to 75% excessive markup removal;
- smarter ungrouping of g elements (groups with filters, masks etc. are currently bypassed).
- the grouping of elements by full and partial matching of the style attribute;
- the handling of path segments, the approximation of paths;
- the removal of partially and/or completely identical elements;
- the removal of overlapped and thus invisible elements;
- the application of all transformation matrices;
- switching from QtXml to libxml2, since the former is responsible for 1/3 of processing time;
- better GUI with human-readable tooltips.