parsimonhi / animCJK

Draw animated Japanese characters (Kanji and Kana), Korean characters (Hanja) and Chinese characters (Hanzi) in correct stroke order using svg, free open-source code.
284 stars 72 forks source link

Is there a source of stroke data for primitives and keys like 衤, 扌? #28

Open ganqqwerty opened 1 year ago

ganqqwerty commented 1 year ago

I noticed that in the dataset, some radicals and primitives have stroke data, for example 氵 At the same time, 衤, 扌do not have stroke data. How is the data generated, is it hand crafted? I would like to add the stroke data about primitives and radicals so that i could use it for my anki deck projects.

parsimonhi commented 1 year ago

Basically: a) If the character exists in the MakeMeAHanzi project, we get the data from it, transform it into AnimCJK format using some scripts, then use Inkscape (a software that can edit SVG files) to adapt the shapes if necessary (because there are many small imperfections, there are some errors and the shape of a character may be different depending on the language). b) If the character does not exist in the MakeMeAHanzi project, we build the character using parts of other already existing characters using a text editor (SVG image files are text files) and Inkscape. c) Finally, we use other scripts to create the "medians", add a brush effect to the ends of the lines and update all other data such as decompositions and dictionary entries.

Note that it took years to make AnimCJK. If you have hundreds of characters to add, it can take a long time.

Do you have a list of characters you want? Or is it an open list?

parsimonhi commented 1 year ago

Hello,

Just added 衤 and 扌 to svgsJa and svgsZhHans.

ganqqwerty commented 1 year ago

Do you have a list of characters you want? Or is it an open list?

Sorry that it took me so long to reply. I am thinking about all radicals, plus all Heisig "primitives" (which includes all radicals). A list of primitives can be found here, it has the SVGs too

parsimonhi commented 1 year ago

The "heisig-rtk-index" project looks very interesting. But your two "All" are just scary! :-)

I cannot promise anything. It's a lot of work to do (probably many years of free time) because there is no automatic method to accomplish this task.