7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2024-11-23 12:15:00 +00:00
kicad/tools/newstroke
John Beard 410e200f80 Newstroke: neaten some Chinese characters.
Many characters have doubled-up or broken
strokes. There are thousands, but fix a few of the most
common ones (e.g. numbers, colours, a few electronic
terms)
2024-08-28 13:49:35 +01:00
..
obsolete Implement fontconv in Python. 2023-07-24 22:23:11 +00:00
charlist_without_CJK.txt helpers and tools are the same thing 2022-07-21 19:16:16 -04:00
charlist.txt Add the fraction numeric form glyphs. 2023-07-25 16:58:16 +00:00
CJK_symbol.kicad_sym Newstroke: Add readable glyphs to character names 2024-08-28 13:49:35 +01:00
CJK_wide_U+4E00.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+5AE6.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+7D2A.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+9C60.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+66B9.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+92B4.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+7212.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CJK_wide_U+8814.kicad_sym Newstroke: neaten some Chinese characters. 2024-08-28 13:49:35 +01:00
CMakeLists.txt Newstroke: add CMake targets to manage the files 2024-08-14 14:28:54 +01:00
coord.txt helpers and tools are the same thing 2022-07-21 19:16:16 -04:00
font_header.cpp Fix the missing segments in certain newstroke glyphs. 2023-07-05 17:19:01 +00:00
font.kicad_pcb helpers and tools are the same thing 2022-07-21 19:16:16 -04:00
font.kicad_pro Newstroke: replace font.pro with a new project that shows all codepoints 2024-08-14 14:28:54 +01:00
font.kicad_sch Newstroke: replace font.pro with a new project that shows all codepoints 2024-08-14 14:28:54 +01:00
font.kicad_sym Newstroke: Upgrade symbol library files 2024-08-28 13:49:34 +01:00
fontconv.py Newstroke: Add readable glyphs to character names 2024-08-28 13:49:35 +01:00
gen_all_codepoints.py Newstroke: replace font.pro with a new project that shows all codepoints 2024-08-14 14:28:54 +01:00
half_full.kicad_sym Newstroke: Add readable glyphs to character names 2024-08-28 13:49:35 +01:00
hiragana.kicad_sym Newstroke: Add readable glyphs to character names 2024-08-28 13:49:35 +01:00
katakana.kicad_sym Newstroke: Add readable glyphs to character names 2024-08-28 13:49:35 +01:00
README.txt Newstroke: add CMake targets to manage the files 2024-08-14 14:28:54 +01:00
sym-lib-table Newstroke: replace font.pro with a new project that shows all codepoints 2024-08-14 14:28:54 +01:00
symbol.kicad_sym Newstroke: Upgrade symbol library files 2024-08-28 13:49:34 +01:00
symbols.sch helpers and tools are the same thing 2022-07-21 19:16:16 -04:00
test.h helpers and tools are the same thing 2022-07-21 19:16:16 -04:00
testlist.txt helpers and tools are the same thing 2022-07-21 19:16:16 -04:00

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.