2025-07-31 01:12:05 +02:00
|
|
|
# Font Helper for Karlos
|
|
|
|
|
|
|
|
|
|
## Features
|
2025-10-16 21:18:52 +02:00
|
|
|
- take images containing several chars and break them down into individual images (splitting)
|
2025-07-31 01:12:05 +02:00
|
|
|
- images containing several consecutive characters in 2D arrangement
|
|
|
|
|
- images containing several arbitrary characters in 1D arrangement
|
|
|
|
|
- images containing a single character
|
|
|
|
|
- build a font automatically out of these individual images
|
|
|
|
|
- sequential chars are automatically grouped
|
|
|
|
|
|
|
|
|
|
## Example
|
2025-08-05 01:51:58 +02:00
|
|
|
`cargo run -- split-and-create --index example/index.json --font-dir font --encoding BitPerPix4 font.sff`
|
2025-10-16 21:18:52 +02:00
|
|
|
|
|
|
|
|
## Command Line Arguments
|
|
|
|
|
A font is specified by its glyph width, glyph height, and one or more _splitters_ (see below).
|
|
|
|
|
|
|
|
|
|
Commands are (use `<command> --help` to get more information):
|
|
|
|
|
- _Inspect_ (`inspect`): inspect a font, printing attributes and symbols.
|
|
|
|
|
- _Create_ (`create`): from a set of images containing single glyphs, create an sff font file.
|
|
|
|
|
- the file name of the glyph images should be its number in base 10, so the glyph for `a` is `97.png`
|
|
|
|
|
- _Split_ (`split`): parse a sequence of splitters and create individual images.
|
|
|
|
|
- _SplitAndCreate_ (`split-and-create`): apply the above two commands in sequence.
|
|
|
|
|
|
|
|
|
|
# Splitter
|
|
|
|
|
For an example of how to specify these splitters, refer to `example/index.json`.
|
|
|
|
|
|
|
|
|
|
The following variants exist:
|
|
|
|
|
- _Table_: a rectangular grid of glyphs, numbered ascending left to right and top to bottom.
|
|
|
|
|
- `path: String`: file path to image
|
|
|
|
|
- `nrows: Int`: number of rows
|
|
|
|
|
- `ncols: Int`: number of columns
|
|
|
|
|
- `start_number: Int`: first glyph number
|
|
|
|
|
- _Individual_: one row of glyphs, each with an individual (non-consecutive) number.
|
|
|
|
|
- `path: String`: file path to image
|
|
|
|
|
- `numbers: [Int]`: list of glyph numbers
|
|
|
|
|
- _Single_: a single glyph.
|
|
|
|
|
- `path: String`: file path to image
|
|
|
|
|
- `number: Int`: the glyph number
|