├── LICENSE ├── Makefile ├── Dockerfile ├── README.md └── svg ├── 201-exclamation.svg ├── 201-p.svg ├── 201-r.svg ├── 201-i.svg ├── 201-t.svg ├── 201-q.svg ├── 201-question.svg ├── 201-l.svg ├── 201-d.svg ├── 201-z.svg ├── 201-j.svg ├── 370.svg ├── 132.svg ├── 201-n.svg ├── 201-k.svg ├── 201-v.svg ├── 201-w.svg ├── 201-o.svg ├── 201-x.svg ├── 201-g.svg ├── 201-y.svg ├── 201.svg ├── 201-a.svg ├── 100.svg ├── 201-e.svg ├── 101.svg ├── 201-c.svg ├── 201-s.svg ├── 201-f.svg ├── 201-b.svg ├── 201-h.svg ├── 201-m.svg ├── 201-u.svg ├── 577.svg ├── 602.svg ├── 351.svg ├── 316.svg ├── 220.svg ├── 590.svg ├── 479.svg ├── 174.svg ├── 173.svg ├── 421.svg └── 421-overcast.svg /LICENSE: -------------------------------------------------------------------------------- 1 | The source icons are (c) Nintendo/Creatures Inc./GAME FREAK Inc./The Pokémon 2 | Company and used here under fair use in a non-commercial, open-source project. 3 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: build docker images all 2 | 3 | OUT?=`pwd` 4 | OPTS?= 5 | 6 | build: 7 | docker rm -fv svgexport || true 8 | docker build -t svgexport . 9 | 10 | docker: 11 | docker rm -fv svgexport || true 12 | docker run -it -d -v `pwd`/svg/:/in -v ${OUT}:/out --name svgexport svgexport /bin/sh 13 | 14 | images: 15 | cd svg; /usr/bin/find . -name '*.svg' -type f -print0 | xargs -0 -I '{}' sh -c 'f="{}";d=$$(dirname $$f);echo $$f;docker exec -i svgexport /usr/bin/svgexport /in/$$f /out/$$(basename $$f .svg).png ${OPTS}' 16 | 17 | all: build docker images 18 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM mhart/alpine-node:5 2 | 3 | RUN mkdir /in && mkdir /out 4 | 5 | VOLUME ["/in"] 6 | VOLUME ["/out"] 7 | 8 | # Instal SVGExport, remove temporary directories and non-docker version of phantomjs 9 | RUN npm install -g svgexport \ 10 | && rm -rf /tmp/* \ 11 | && rm -rf /usr/lib/node_modules/svgexport/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs 12 | 13 | # Install dockerized version of phantomjs 14 | RUN apk update curl && apk add curl \ 15 | && curl -Ls https://github.com/fgrehm/docker-phantomjs2/releases/download/v2.0.0-20150722/dockerized-phantomjs.tar.gz \ 16 | | tar xz -C / \ 17 | && apk del curl \ 18 | && ln -s /usr/local/bin/phantomjs /usr/lib/node_modules/svgexport/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs 19 | 20 | CMD ["/usr/bin/svgexport"] 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # pokemon-svg 2 | 3 | A collection of Pokemon SVGs. I claim no credit. I have merely assembled 4 | (read: caught) them all in this repo. 5 | 6 | ## Docker 7 | 8 | A `Dockerfile` and `Makefile` are included so that you can quickly and easily 9 | export images. Obviously, [Docker](https://www.docker.com/) is required and 10 | and [Make](https://www.gnu.org/software/make/) is recommended. 11 | 12 | The docker image finishes up at about `159.7 MB`, mostly because of 13 | `phantomjs`. 14 | 15 | ### Export all images with Make 16 | 17 | ``` 18 | make 19 | ``` 20 | 21 | Yup, that simple. Runs: 22 | 23 | * `build` - builds the docker container 24 | * `docker` - preps the container for repeat access, mounts volumes, etc. 25 | * `images` - processes all the images 26 | 27 | ### Makefile options 28 | 29 | #### Custom `/out` directory 30 | 31 | After you have built the container, you can customize the `/out` directory 32 | if you do not want all the PNGs to show up here. Be sure the directory 33 | exists first. 34 | 35 | Use the `OUT=directory` argument to send the PNGs elsewhere. 36 | 37 | ##### Example: Output PNGs to the `/tmp` directory 38 | 39 | ``` 40 | make OUT=/tmp docker 41 | make images 42 | ``` 43 | 44 | #### Change the PNG export options 45 | 46 | Same options as [shakiba/svgexport](https://github.com/shakiba/svgexport). 47 | After you have built (`make build`) and started the container (`make docker`), 48 | you can customize the options for the PNGs if you want them at a different 49 | resolution. 50 | 51 | Use the `OPTS=options` argument to modify the PNGs prior to export. 52 | 53 | ##### Example: Resize all images to max 24px wide 54 | 55 | ``` 56 | make OPTS=24: images 57 | ``` 58 | 59 | ##### Example: Resize all images to max 128px tall 60 | 61 | ``` 62 | make OPTS=:128 images 63 | ``` 64 | 65 | ## Credit 66 | 67 | * Twitter: [@eevee](https://twitter.com/eevee) 68 | * Original Website: http://veekun.com/dex/media/pokemon/dream-world/ 69 | * NodeJS Module: [shakiba/svgexport](https://github.com/shakiba/svgexport) 70 | * Dockerized PhantomJS: [fgrehm/docker-phantomjs2](https://github.com/fgrehm/docker-phantomjs2) 71 | 72 | ## License 73 | 74 | The source icons are (c) Nintendo/Creatures Inc./GAME FREAK Inc./The Pokémon 75 | Company and used here under fair use in a non-commercial, open-source project. 76 | -------------------------------------------------------------------------------- /svg/201-exclamation.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-p.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-r.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-i.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-t.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-q.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-question.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-l.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-d.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-z.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-j.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/370.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/132.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-n.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-k.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-v.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-w.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-o.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-x.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-g.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-y.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-a.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/100.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-e.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/101.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-c.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-s.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-f.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-b.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-h.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-m.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/201-u.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/577.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/602.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/351.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/316.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/220.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/590.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/479.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/174.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/173.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/421.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /svg/421-overcast.svg: -------------------------------------------------------------------------------- 1 | 2 | --------------------------------------------------------------------------------