kanji_colorize.py is a script for coloring, resizing, and renaming
the stroke order diagrams from the
KanjiVG project. I wrote it to create
sets that make it possibe to easily add stroke order diagrams to an
anki kanji deck, but they can be used for
anything you want some nicely colored stroke order diagrams for.
If you'd prefer not to bother running a python script, there are some sets of stroke order diagrams generated with it available for download.
If you just want some colorted diagrams, you can get them on the github releases page.
I've packaged up a spectrum set and a contrast set. The spectrum set colors the strokes in rainbow order and is nice because the you can see at a glance how the kanji is put together, but has the disadvantage that stokes next to each other are similar colors, and color is sometimes necessary to tell which number goes with which stroke. The contrast set maximizes the contrast between any set of consecutive strokes. (This uses the golden ratio. Math is nifty.)
Using with Anki
There is an addon for Anki2 that generates colored diagrams for all of your kanji cards. You can install it with code 1964372878.
Downloading and Running the Software
The kanji_colorize.py script makes it possible to generate diagrams to your own specifications. It may have issues with a python not built with wide-character support
If you find any errors in image files generated by the most recent version of kanji colorizer, check to see whether they have been fixed in the KanjiVG data by looking at their online kanji viewer. If it is correct there, it means that I didn't notice that there was an update; let me know and I'll fix it. If the error exists there, let the KanjiVG project know using their issue tracker.
Have you created an improvement to KanjiColorizer that you think other people would also like to have? If so, please submit a patch or a pull request! I'm not always very prompt but I do get to them eventually.
Please make sure existing tests pass. Even better, add new tests for anything you add. Either doctest or unittest is fine, though ideally the doctests would contain executable examples that fully illustrate the function and the unittest tests would contain further worthwhile checks.
Activate the virtual environment and install requirements:
$ python3 -m venv venv $ source venv/bin/activate $ pip install -r requirements.txt
To run the existing tests:
$ python -m kanjicolorizer.colorizer $ python -m unittest discover -s kanjicolorizer
To create a new release:
$ paver dist_anki_addon
Test by unzipping the zip file in dist into a new directory in ~/.local/share/Anki2/addons21 (or the equivalent for the OS being tested).
The code is available under the Affero GPL version 3 or later and the SVG
images are available under Creative Commons Attribution-Share Alike 3.0.
See file headers and files in
licenses/ for more information.