Commit Graph

8 Commits

Author SHA1 Message Date
Reinhold Gschweicher
a481af06cf lv_img_conv: support other modes like 'P'
Support other image modes like `P`, which uses 8 bits per pixel and a
color palette to save space.

Luckily the Pillow module can do the mode conversion for us.

Fixes: https://github.com/InfiniTimeOrg/InfiniTime/issues/1985
2024-01-23 08:51:14 +01:00
Reinhold Gschweicher
77546c9fe2 lv_img_conv_py: minimal python port of node module
Create a minimal python port of the node.js module `lv_img_conv`. Only
the currently in use color formats `CF_INDEXED_1_BIT` and
`CF_TRUE_COLOR_ALPHA` are implemented.

Output only as binary with format `ARGB8565_RBSWAP`.

This is enough to create the `resources-1.13.0.zip`.

Python3 implements "propper" "banker's rounding" by rounding to the nearest
even number. Javascript rounds to the nearest integer.
To have the same output as the original JavaScript implementation add a custom
rounding function, which does "school" rounding (to the nearest integer)

Update CMake file in `resources` folder to call `lv_img_conf.py` instead of
node module.

For docker-files install `python3-pil` package for `lv_img_conv.py` script.
And remove the `lv_img_conv` node installation.

---

gen_img: special handling for python lv_img_conv script

Not needed on Linux systems, as the shebang of the python script is read
and used. But just to be sure use the python interpreter found by CMake.
Also helps if tried to run on Windows host.

---

doc: buildAndProgram: remove node script lv_img_conv mention

Remove node script `lv_img_conv` mention and replace it for
runtime-depency `python3-pil` of python script `lv_img_conv.py`.
2023-10-26 22:45:01 +02:00
JF
44d1798f4f
navigation: Move font to external memory (#1838)
The TTF font used by the navigation app is ~20KB and is stored in internal flash memory.
To free this space, the TTF font is now converted in 2 "atlas pictures" (pictures that contain multiple concatenated images) stored in the external flash memory. The navigation app now accesses one of those 2 files and apply an offset to display the desired picture.

The corresponding documentation has also been updated.

Add comments about the layout of the pictures that contain the icon and about the indexing of those icons.

In documentation (buildAndProgram.md), edit the section about the debug compilation mode. Remove the part about removing the Navigation app to free some memory (since it's not relevant anymore) and explain how to selectively build parts of the firmware in Debug mode.
2023-09-02 19:41:51 +02:00
Riku Isokoski
5feccb382a infineat: Fix 12-hour time
Missing characters
2023-01-26 10:58:47 +02:00
Jean-François Milants
4cf73fc169 Infineat : Add support for external resources, and read the images and fonts from the ilesystem 2022-09-11 16:22:28 +02:00
Jean-François Milants
e2a3d9f0c7 Small improvement in generate-fonts.py following code review.
Add lv_img_conf in Docker image to build resources at build time.
2022-09-11 14:44:36 +02:00
Jean-François Milants
cbe2f08cf7 Fix missing '/' in the path of a font (external resource) 2022-09-11 14:44:36 +02:00
Jean-François Milants
cfc055c978 Package resources + a metadata file into a single .zip file. 2022-09-11 14:44:36 +02:00