kopia lustrzana https://github.com/peterhinch/micropython-font-to-py
V0.27 Command line as comment in font file.
rodzic
1bf283b16f
commit
a9bafe4663
|
@ -61,7 +61,10 @@ Example usage to produce a file `myfont.py` with height of 23 pixels:
|
||||||
set. See below.
|
set. See below.
|
||||||
* -k or --charset_file Obtain the character set from a file. Typical use is
|
* -k or --charset_file Obtain the character set from a file. Typical use is
|
||||||
for alternative character sets such as Cyrillic: the file must contain the
|
for alternative character sets such as Cyrillic: the file must contain the
|
||||||
character set to be included. An example file is `cyrillic`.
|
character set to be included. An example file is `cyrillic`. Another is
|
||||||
|
`extended` which adds unicode characters "° μ π ω ϕ θ α β γ δ λ Ω" to those
|
||||||
|
with `ord` values from 32-128. Such files will only produce useful results if
|
||||||
|
the font file includes them.
|
||||||
|
|
||||||
The -c option may be used to reduce the size of the font file by limiting the
|
The -c option may be used to reduce the size of the font file by limiting the
|
||||||
character set. If the font file is frozen as bytecode this will not reduce RAM
|
character set. If the font file is frozen as bytecode this will not reduce RAM
|
||||||
|
@ -78,6 +81,10 @@ font_to_py.py FreeSans.ttf 20 freesans_cyr_20.py -k cyrillic
|
||||||
If a character set is specified, `--smallest` and `--largest` should not be
|
If a character set is specified, `--smallest` and `--largest` should not be
|
||||||
specified: these values are computed from the character set.
|
specified: these values are computed from the character set.
|
||||||
|
|
||||||
|
The representation of non-contiguous character sets having large gaps (such as
|
||||||
|
the `extended` set) is not very efficient. This matters little if the font is
|
||||||
|
to be frozen as bytecode. I plan to investigate ways of improving this.
|
||||||
|
|
||||||
Any requirement for arguments -xr will be specified in the device driver
|
Any requirement for arguments -xr will be specified in the device driver
|
||||||
documentation. Bit reversal is required by some display hardware.
|
documentation. Bit reversal is required by some display hardware.
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ The resultant file is usable with two varieties of display device drivers:
|
||||||
|
|
||||||
# Solution
|
# Solution
|
||||||
|
|
||||||
This comprises three components:
|
This comprises three components, links to docs below:
|
||||||
|
|
||||||
1. [font_to_py.py](./FONT_TO_PY.md) This utility runs on a PC and converts a
|
1. [font_to_py.py](./FONT_TO_PY.md) This utility runs on a PC and converts a
|
||||||
font file to Python source. See below.
|
font file to Python source. See below.
|
||||||
|
|
|
@ -370,7 +370,8 @@ class Font(dict):
|
||||||
|
|
||||||
STR01 = """# Code generated by font-to-py.py.
|
STR01 = """# Code generated by font-to-py.py.
|
||||||
# Font: {}{}
|
# Font: {}{}
|
||||||
version = '0.26'
|
# Cmd: {}
|
||||||
|
version = '0.27'
|
||||||
"""
|
"""
|
||||||
|
|
||||||
STR02 = """_mvfont = memoryview(_font)
|
STR02 = """_mvfont = memoryview(_font)
|
||||||
|
@ -419,7 +420,8 @@ def write_data(stream, fnt, font_path, hmap, reverse, iterate):
|
||||||
defchar = fnt.defchar
|
defchar = fnt.defchar
|
||||||
charset = fnt.def_charset
|
charset = fnt.def_charset
|
||||||
st = '' if charset == '' else ' Char set: {}'.format(charset)
|
st = '' if charset == '' else ' Char set: {}'.format(charset)
|
||||||
stream.write(STR01.format(os.path.split(font_path)[1], st))
|
cl = ' '.join(sys.argv)
|
||||||
|
stream.write(STR01.format(os.path.split(font_path)[1], st, cl))
|
||||||
stream.write('\n')
|
stream.write('\n')
|
||||||
write_func(stream, 'height', height)
|
write_func(stream, 'height', height)
|
||||||
write_func(stream, 'max_width', fnt.max_width)
|
write_func(stream, 'max_width', fnt.max_width)
|
||||||
|
|
Ładowanie…
Reference in New Issue