SP Font Maker, based on the English-language Handwrite.
SP Font Maker homepage, with tips and examples!
Fill out this image, and send it to someone who's managed to install the script. They'll give you your font file:
I don't really know how Python works. Someone please help me to make the installation instructions easier!!!
Currently, the architecture looks like this:
default.toml(file inherited from Handwrite)- most default glyphs
cli.pywrites custom words to specific indices inglyphs-fancy, in a font-specific JSON copy ofdefault.tomlsheettopnguses the grid cell number as an index intodefault.toml'sglyphs-fancy, to assign each grid cell a name, before saving each PNGsvgtottf:add_ligaturesgoes throughglyphs-fancy, and creates a ligature for each entry with aligaturefield- also adds them to
glyphs_with_ligatures, for cartouching - also hard-codes the list
cartoucheable_non_words
- also adds them to
svgtottf:add_glyphsgoes throughglyphs-fancy, and adds each character to the font file, using thecodepointfield if present- codepoints for UCSUR words not included on the template
- mapping of ASCII special characters used in custom ligatures, to legal glyph names for those characters
- copy existing glyphs to create ASCII codepoints
- add ligature for
space space - omit certain glyphs (cartouche, ijklmpstuw vertically, te/to, pixel fonts) from having their scan areas centered
- note that the vector glyphs themselves are actually centered later
- add characters for zero-width space and ideographic space
- add blank full- and zero-width glyphs for special characters
cli.py- positions of custom word slots
- open question: how should i associate the custom words string with the default page? is it just a first-page-only feature?
sheettopng.py- positions of custom word slots
- shift cartouche scan area
- generate PNG for the inner part of the cartouche
add_ligatures.pycreate_toml_html.py- print default glyphs on preview webpage
- print custom glyphs on preview webpage, passed in directly from
cli.py
svgtottf.py(including_ffpython)
This complexity prevents us from adding these features.
I think a better architecture would look like this:
default-sheet.toml:- the physical position and behaviors of the 180 glyphs on the 1st sheet
- the generated cartouche middle
default-font-settings.toml:- glyph names necessary for custom ligatures (letters and numbers)
- fallback glyphs for punctuation used in sitelen Lasina prose, such as
,;!? - fallback glyphs for ligatures used in unsupported SP features, such as
(){}*",+&
- optional further sheet .toml files, specified on the command line alongside extra sheet images!
