vd2svg

Android vector drawable to SVG

Usage no npm install needed!

<script type="module">
  import vd2svg from 'https://cdn.skypack.dev/vd2svg';
</script>

README

npm Build Status

vd2svg

Android vector drawable to SVG converter. This tool could help you extract all android vectors to SVG and display in any file browser.

Installation

Easiest way is to install via NPM

npm install vd2svg -g

Another way is to clone this repo and install locally:

./gradlew jdeployInstall

Usage

The program skips all non-vector xml.

cd ~/your/drawable/folder
vd2svg *.xml

If you are using colors from resource files, then need point to colors file.

cd ~/your/drawable/folder
vd2svg -r ../values *.xml

-r scans a directory recursively and searches for color values. It also could point to the concrete file.

Advance usage

If you want fast preview all vectors and your file browser doesn't support SVG, you could convert them to png using imagemagick

vd2svg *.xml
mogrify -format png -density 1200 "*.svg"

Help

➜  ~ vd2svg --help
usage: vd2svg [-h] [-v] [-q] [-o OUTPUT] [-r RESOURCES]... INPUT...

optional arguments:
  -h, --help              show this help message and exit

  -v, --verbose           Verbose mode. Causes vd2svg to print info messages

  -q, --quiet             Quiet mode. Disables progress output

  -o OUTPUT,              Path to the output directory. By default, output is
  --output OUTPUT         put together with the input files

  -r RESOURCES,           File or directory containing android resources for
  --resources RESOURCES   color parsing


positional arguments:
  INPUT                   Input file mask. For example '*.xml'

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.