Rewrite rules for SVG using Scala's XML API for conversion in mapping applications.
This project is still under development and may change drastically between commits. At this point, this is for demonstration purposes only.
Currently this project can:
- Increase the size of stroke-weights globally by a given factor
- Add a fill to
<g>
tags that have direct children who possess a user-specified attribute and user-specified values.- Attribute can be prefixed/namespaced (eg:
namespace:id="4"
) or unprefixed/namespaced (eg:id="4"
)
- Attribute can be prefixed/namespaced (eg:
- Accept an SVG from a specified filepath or a URL
- Process the SVG in a streaming fashion
- Optimize for performance
- Make a fully command-line accessible application
- Translate zoom levels of a map to stroke-increase factors
- Write more robust tests for edge cases instead of basic sanity checks.
- Write documentation
- Clone this repository locally with
git clone https://github.com/GeoffreyPS/svg-transformers
- If you are missing javac, install Oracle or OpenJDK.
- If you are missing
sbt
install sbt - Run
sbt build
within your cloned directory