Newstroke Font Readme
=====================

Newstroke is a stroke (plotter) font originally designed for KiCAD.

Font author:      Vladimir Uryvaev  (vovanius@bk.ru)
Project homepage: http://vovanium.ru/sledy/newstroke

Files
-----
font.kicad_sym        - main glyph library in KiCAD library format
symbol.kicad_sym      - glyph library for most math, tech and other symbols
CJK_symbol.kicad_sym  - CJK symbols
CJK_wide*.kicad_sym   - CJK characters in ranges
katakana.kicad_sym    - Japanese script
hiragana.kicad_sym    - Japanese script
half_full.kicad_sym   - U+FF00 half- and full-width forms
charlist.txt          - unicode glyph map list
fontconv.py           - 'compiling' .kicad_sym files to C source used by KiCAD
../../common/newstroke_font.cpp
                      - C source with the font, generated by fontconv.py
gen_all_codepoints.py - Make a string of all codepoints
font.kicad_sch        - All codepoints in a schematic (can be used to check font renders)

Other Files
-----------
old/*.lib             - the fonts that were originally used to generate .kicad_sym files
old/font_draft1.lib   - old draft glyph library with the metrics from Hersheys Simplex
old/font.pro          - KiCAD project

Requirements
------------
KiCAD 8 or newer (https://www.kicad.org/download/) - for glyph editing
Python 3.10 or newer - for font generation

Usage
-----
* Edit glyphs with KiCAD 8 or newer EESchema library editor.
* Add/modify Unicode positions to charlist.
* Run the `newstroke_generate_cpp` CMake target
  * Internally, this runs:
      python fontconv.py

Checking changes
----------------

You can use the font.kicad_sch file to show all codepoints.

If you export this file before and after your change, you can use the `diff-pdf`
tool to see the changes:

```
../build/kicad/kicad-cli sch export pdf ../tools/newstroke/font.kicad_sch -o old.pdf
```

Make your changes, rebuild KiCad. Remember to use your newly-built `kicad-cli`!

```
../build/kicad/kicad-cli sch export pdf ../tools/newstroke/font.kicad_sch -o new.pdf
diff-pdf old.pdf new.pdf -g --view
```

License
-------
Released under CC0 licence.
