differentes modifs

This commit is contained in:
marc 2025-05-09 14:41:04 +02:00
parent cbb42f8773
commit a12fd1df9d
15 changed files with 1103 additions and 984 deletions

View File

@ -1,22 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIDmTCCAoGgAwIBAgIUd5qKY6blEffPyHQZnmQfxkcCO7AwDQYJKoZIhvcNAQEL
BQAwXDELMAkGA1UEBhMCRlIxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEVMBMGA1UEAwwMMTkyLjE2OC4wLjI4
MB4XDTI0MTExMzE4MjYxOVoXDTI1MTExMzE4MjYxOVowXDELMAkGA1UEBhMCRlIx
EzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMg
UHR5IEx0ZDEVMBMGA1UEAwwMMTkyLjE2OC4wLjI4MIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEA8lKPcpJ6/FhrI+E8fzR93N/XIfEW7GpFa+KNp+DK9DGS
hHno2yVGXNdUFRQEL/2pL8aiZzZ7xGMubzEIr1dlHrb/PplGRTXCxQWnDJDsOu4w
7TbzjYxDhgMwXhSGuFlMexFBh+W9qcO85l4wNSOhHusyf7XZaPAd3NGmK4XsoeXJ
DSROJLLpvyZM3yt1kuC3GTWSqUe4Ldv+kaAfyW+X/PJ7Tgb6frLGNCs5A0zLhFxb
FS2omnqX6+H2Bjvk3nCQr85zcuIrnXQ+Hy58MayS+dRqPTSNw7RqRVvrGUuQuj5y
/ruAVLjG6F9wTZZFJ8Nk2veuFxIG+8ADpglWoYrokQIDAQABo1MwUTAdBgNVHQ4E
FgQUUa64jnTc+VqWQB93Fp/yPuirm2cwHwYDVR0jBBgwFoAUUa64jnTc+VqWQB93
Fp/yPuirm2cwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAnqg9
DeBozovXmwcbDTlTqz1b5LJ3Xz4mhUnEssmlDvvlXMqL1CjeXDKgOXtkWaomTJNO
MfMTmkkKg2lomNe2O84nUyPJnHYle5cbxZXAvbkmsi6R95lXFf5+bHAtU05TFYKc
BWMPB3Vwym9qrAc8G1LPr05LYgrJsQ9xkf0pVR7hrjgu9k6ElNAQSiH4dlyK4b/T
12U4zBawZNv3f6OnKOTq2NuwwzxWSwRRbEGUf0qO6Z8LNsj7yvmp2ImfN1e3a39p
+WmxJkHBzg5LxUon8jtiZLKeAPNlAPvKTs/4umE0LdZnsdlYrNR+kFeMMurxHvfZ
ykxPELUVUWEgv/IRbA==
-----END CERTIFICATE-----

View File

@ -1,28 +0,0 @@
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDyUo9yknr8WGsj
4Tx/NH3c39ch8RbsakVr4o2n4Mr0MZKEeejbJUZc11QVFAQv/akvxqJnNnvEYy5v
MQivV2Uetv8+mUZFNcLFBacMkOw67jDtNvONjEOGAzBeFIa4WUx7EUGH5b2pw7zm
XjA1I6Ee6zJ/tdlo8B3c0aYrheyh5ckNJE4ksum/JkzfK3WS4LcZNZKpR7gt2/6R
oB/Jb5f88ntOBvp+ssY0KzkDTMuEXFsVLaiaepfr4fYGO+TecJCvznNy4iuddD4f
LnwxrJL51Go9NI3DtGpFW+sZS5C6PnL+u4BUuMboX3BNlkUnw2Ta964XEgb7wAOm
CVahiuiRAgMBAAECggEAHqYEkKgoN/xy6KHXRft8o9AH5LoafSJfz2pjIkWTRdlz
P6AvrHAFez6c2uGiOfOqT2mfJtDETK2CtPuNrqeuGXlpxSAbvCs1jDfPzg4SYs23
kHkvyspfy/ZhSrTr6SsaOkKPeEG9gFhKbxSgokf0W/XBeFemvNgJ3uEBVGXm7P7l
MtwGTaM/wHRUqbLTxwzp++pzajs3YDZiU42TJP9hw2d6bBhRS0Jf0p8EAmDZRin2
IdKl559pwLewfwfyDUd2ea4NpGVT7x5bX0vI0QKPfLbWyd5Q1+cv7dRi9EP8iB57
anrrRHWFmq/+CX79CGMvbdt+3zqxFAgpDxLQ3gcIpQKBgQD5U9lKIUkFw6EqcNyq
Uz0+Z/0fXzhkABUBvzan+mbESYD+cnDzA2WX+bBgfmugcmWNTjUmW/6WC0ZhNQ/x
5SJz9OYKBmdkdg0XUm4ALhfwDvX6Pdq8A6NFHUg/y/ljjTC7n/qDkcB4L3/jENmX
ZT91biCV8574MUrqZk9FRInSDwKBgQD4zrhHgYcwD0iRFqSbUeaU/M/Vwh5ZyVlU
5+kXXsjfeXdMoTEeQaaWjkYjPzV+PcAw9BGQeS+GtOx18P/vuVvVGuFEgM1qBiGt
d1Ixb0sdzDDSP91tH1gXcYKM7DETIyOok+U48YTkEnsnxGk2iOjPHm1iu4mINKFa
YG/qm7u7XwKBgGY9Jesp/wGoGNyIb1RA0epXRgqpRzxqdDLFMCptmdp/sa+lSf+8
stpA/zxyWrvubQomudDDBICOmwudcK5moVwfXn1Z5ufhKLkZihX00MgVunQlDR7v
9vGOcmQGxns2GHe3wEhXai9eevinnjJgyEblI+OZhOSNggTgcz0aP9GtAoGBAPHj
7+689BR6V1+PNvs2Fcm1O84iymUaRvov+UJaSUpSifR7Jgi3ZOEscu3jjvsrx8UQ
FF90IguBq/5CDmEewTQezPFPk+VHDsjZn5QmEk5m7PQLWRe1CGzKU1T0cAWd/RXw
q0LANCWT/h28a1m0ozpx54C8uMot+Mynw0bAnzRbAoGAG9rlCW9OBFIodxdAOUKH
8oJMF+hYBeyvzEdnZhhpShpnIWs0BKt2sWTFRoedLs5Pck3Y1VuOUWmSNhjLhd5X
f14tTFynLE42NL6eJ5FyFXLoogki4ObegIfgkFhrzHX4f6b6pD3GSDiXhru3ZjUr
mPOvd++V0fTVrC2DfTWaXV0=
-----END PRIVATE KEY-----

View File

@ -41,7 +41,7 @@ static const char *TAG = "ImgDwn";
#define IMGDWN_WIDTH_STR "800"
#define IMGDWN_WIDTH 620
#define IMGDWN_HEIGHT_STR "600"
#define IMGDWN_HEIGHT_STR "500"
#define IMGDWN_HEIGHT 460
#define IMGDWN_URL2 ("http://vps-edf71efa.vps.ovh.net:3000/render/d-solo/7BtRMrv4k/temperatures?orgId=1&var-emplacement=entree_ECS&var-emplacement=entree_reseauSol&panelId=4&width=650&height=460&scale=1&tz=Europe%2FParis/")
#define IMGDWN_URL ("http://vps-edf71efa.vps.ovh.net:3000/render/d-solo/bOcPeysGz/hauteur-cuve?orgId=1&from=now-2d&refresh=1m&panelId=4&width=" IMGDWN_WIDTH_STR "&height=" IMGDWN_HEIGHT_STR "&scale=1&tz=Europe%2FParis") // 650 460

View File

@ -7,6 +7,7 @@ dependencies:
require: private
version: '>=1.0.0,<2.0.0'
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=5.0'
source:
@ -17,6 +18,7 @@ dependencies:
component_hash: 327091394b9ef5c2cd395a960ab70ae64479e0a8831cbd9925e38895fad93719
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=4.1.0'
source:
@ -27,6 +29,7 @@ dependencies:
component_hash: cbb76089dc2c5749f7b470e2e70aedc44c9da519e04eb9a67d4c7ec275229e53
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=4.1.0'
source:
@ -37,6 +40,7 @@ dependencies:
component_hash: 351350613ceafba240b761b4ea991e0f231ac7a9f59a9ee901f751bddc0bb18f
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=4.1'
source:
@ -51,6 +55,7 @@ dependencies:
require: private
version: ^1.1.0
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=5.2'
source:
@ -97,6 +102,7 @@ dependencies:
component_hash: 014948481bda426cd46714f297fe1891711246c62bea288863a8cc8cf13ef1f0
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=4.0'
source:
@ -145,6 +151,7 @@ dependencies:
component_hash: 779b4ba2464a3ae85681e4b860caa5fdc35801458c23f3039ee761bae7f442a4
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=4.4.2'
source:
@ -166,7 +173,7 @@ dependencies:
type: service
version: 1.1.3
espressif/esp_lvgl_port:
component_hash: bb938deffba7d80b2ce582a796c053681b0439e0a7033666688e0f1f5b921125
component_hash: e720c95cf0667554a204591bb5fade4655fb2990465557041200fa44b5bc7556
dependencies:
- name: idf
require: private
@ -178,11 +185,12 @@ dependencies:
source:
registry_url: https://components.espressif.com/
type: service
version: 2.5.0
version: 2.6.0
espressif/esp_serial_slave_link:
component_hash: 8c534b7d4986ca0e4c41db71f559492b795ab862f1d15359d7993034696b7bcc
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=5.0'
source:
@ -190,7 +198,7 @@ dependencies:
type: service
version: 1.1.0
espressif/esp_wifi_remote:
component_hash: f772731a8cc7361a3eb416eac94ac46cf85369cb996c5a5fc9245a07f241fee2
component_hash: 6448c379c1dceef7f0dedd30635006118e8b768be884f3804d4a94930556e08c
dependencies:
- name: espressif/eppp_link
registry_url: https://components.espressif.com
@ -208,13 +216,13 @@ dependencies:
source:
registry_url: https://components.espressif.com/
type: service
version: 0.8.5
version: 0.9.2
idf:
source:
type: idf
version: 5.4.0
version: 5.5.0
joltwallet/littlefs:
component_hash: 34b8c56a14f10b440845fe972ce34ef41d1d205bcb139b3dfc58983a10abf59b
component_hash: e1dbe782be5aa58e879fe9f22bee60e5ff68acbfe3793d92a2e730c27374c787
dependencies:
- name: idf
require: private
@ -222,7 +230,7 @@ dependencies:
source:
registry_url: https://components.espressif.com/
type: service
version: 1.19.1
version: 1.19.2
lvgl/lvgl:
component_hash: 2409fdc84e9766d2a18afd84b051aef3f838348136cdb1c10ac2e8bcdb012bf6
dependencies: []
@ -234,6 +242,7 @@ dependencies:
component_hash: b46dd8c20dee72654e8ea4a43b16e8a93e984a6c10426392a4b8486fed50ca93
dependencies:
- name: idf
registry_url: https://components.espressif.com
require: private
version: '>=5.0'
source:
@ -251,6 +260,6 @@ direct_dependencies:
- joltwallet/littlefs
- lvgl/lvgl
- suda-morris/am2302_rmt
manifest_hash: 7f55ed1927cdc36bd55b14a1d25259f250e5b0415a9bf10a74a1681a6336990d
manifest_hash: fc9086d177c610d5a3ed802c7e759df686413041315e1f9bed4bca07bf42740f
target: esp32p4
version: 2.0.0

View File

@ -6,6 +6,15 @@ if(${IDF_TARGET} STREQUAL "esp32p4")
list(APPEND comps bsp_extra esp32_p4_function_ev_board sdmmc vfs littlefs wifi_logger app_update esp_https_ota espcoredump esp_http_server)
endif()
function (make_font fontSize)
execute_process(COMMAND podman run -v /home/marc/rgb_lcd/main/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size ${fontSize} --no-compress --font Montserrat-Medium.ttf --symbols "0123456789.°éèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'():" --format lvgl -o montserrat_medium_${fontSize}.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575)
endfunction()
make_font(12)
make_font(18)
make_font(24)
idf_component_register(SRC_DIRS . fonts
INCLUDE_DIRS "."
REQUIRES ${comps}

View File

@ -1,22 +1,22 @@
-----BEGIN CERTIFICATE-----
MIIDmTCCAoGgAwIBAgIUJyG8nVHyoUV/0lOqRtSCjVnEtfYwDQYJKoZIhvcNAQEL
MIIDmTCCAoGgAwIBAgIUOi7+QtiJLtk+Ianx4ZXIF53mfpYwDQYJKoZIhvcNAQEL
BQAwXDELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEVMBMGA1UEAwwMMTkyLjE2OC4wLjI4
MB4XDTI1MDUwNzA3NTMzMVoXDTI2MDUwNzA3NTMzMVowXDELMAkGA1UEBhMCQVUx
MB4XDTI1MDUwODIxMjA1MFoXDTI2MDUwODIxMjA1MFowXDELMAkGA1UEBhMCQVUx
EzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMg
UHR5IEx0ZDEVMBMGA1UEAwwMMTkyLjE2OC4wLjI4MIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAvG8y2D7/NR+7YZIRLUYgpe88nWxU/WPTgq5+0wZElEhx
e7ZG0YvYFy298RHhZ3m2KsMrWTaZcnjS41QRsMajoeIjCwnmJ5MkNfCMxAoeFC4D
p26CIzkA6h++RK8MmHLwEdB3sjskafd+Iu/bBA+KDUdQiy6GL3zXVOUjdUFB5MFT
EO0vNZhfjdpv4iQ71KIvS9ORCh6OfvSkUaRCoIa2NQXbLi4be0onV+8UXpX06V6Y
dADj+Gdw32STOb8PI24Ri1EQkED34IaGeaNte0+882ma3J8hX3vnXQbhpC1N+TqA
1szvZUDNs2qmRiLqXyZkxhXJRS055n0wjGdFUmzPgwIDAQABo1MwUTAdBgNVHQ4E
FgQUk7EOCIXLo4LGatOpmk1XdGr7tkwwHwYDVR0jBBgwFoAUk7EOCIXLo4LGatOp
mk1XdGr7tkwwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAkGpE
Q8n9za+NxdAnBMcV4GB0zPBK2NNEY7OXbRv0GA/qBAd0CsvP9QbidC/9Toz7ptT4
KyCZFGx8Xx2AWRx60kJ/f2VVUZIZzUoOA6qj3lN8keAT+OGWszvaXlXIbW/TJrs0
lCv4ynkXI4dBhAd3DnXPQSrEyr1h8DValqh1R/kxi+Kb4SYODIoLz0aRbPJFes3z
n10wPTlxARiz6iKQrZP5UKIrFuWyBPZ5xCHn7AmNdqZqtBKB+ERychSjh5b0oznO
AzZDnBoB4lriWTM0yVV1w1eurz0B0Qtz/rqQnYEhWLJodZC8ipjeUoap6BcPHOMq
tx49i3GdxzVoewbZFQ==
AAOCAQ8AMIIBCgKCAQEAvdYH7paBRB93GgeJDrDYpdLzrTofTOJBNnUQ7YWvNI7A
Advt46Yy/Vz59f/vTKwy0F4hVZ4d8VY+0BShfaUrXl5OzWmJ7zCQzMLl74gqRnxw
d+ExmJDjH+qaDGtHfIbQrhP8y9rK/M8mLuLGhN/gbU2VVIoUIKRQelnQLH5eKCjg
2HyQplVfDT4yUGpAfK/clqhp55dsb8UD4xGSwCcH0DK9BZkPfGU2Icu6CEU0g+eA
vwCKuZmaI32AiII4ca5VH/pbVp9ROkGTgoQ0EKObqO1qgL628SwerHNYY+gtj4V8
fpj1xognXLtaUGvGTDAfN4wWLXZ8DxSiCQ0l7bfwJQIDAQABo1MwUTAdBgNVHQ4E
FgQUQO787KNx3MuicFrM/IfEM7wRTuAwHwYDVR0jBBgwFoAUQO787KNx3MuicFrM
/IfEM7wRTuAwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAduAp
Vqn4S2nkS0nrF/ahIV6tVqSluZShIRug3O+NGEDhVqv/qvJ0qlIQm1uRfrdY/CPq
PLBXHMcCU+M6/GjylHzxtmHU0UXQ7KGpMdVuTKR/z5GymU2yk+DRmz717JKZ9EeL
DaNH6nkIID5+OSPMOfxTAGGctjLZDumfWegZFPliVv0kwyrocCiScAGWz7FvKCRJ
Hl0xQELNafzhFIpHhZzGQ+uVUuzTstL/la0XqPV5ObHoFEkX/OHPLAKuayzxFWCK
f3JtKDgmtKbSUhsjBuZ1Yxb/oY+NiBddO7p60a8r4abZ6etzJ0Z7uO+lp9XKb2C1
hzqdUje8g+LEe0jsKg==
-----END CERTIFICATE-----

30
main/ca_key.pem Normal file
View File

@ -0,0 +1,30 @@
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIyFKMPkFq4BYCAggA
MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECNOtqNNR+tlNBIIEyNHx/EB9kkoD
3K3ES8DeRIY1Us2jkaMSe7Xg3ot9umWBOdDDDdQKRqmfzxxqU23J2Zuqe+r3v1Hy
8hWY0zst8FOn4ShY/HgnnmsnD4dQ6/iM+o1h86XUyCI9P94Tp1lEI38D/OPuYMS+
0NbUzl8DsFqIkLI5y+LSRVrwK1S9IUV+g6pxdj/2ZHxhsWYDIdt/8tFhpf8iBe+y
bZilzBrgSEmjB9sNSFOdOtL8GP9DaQrr8Zsxk325tCrBcBdf91Z2fCOdt36Xfpas
0Q8wQYNonUVcylU7khzNgnqyDwD4XZ/Jrg1HGqVqNxn2xo47wPDntNlu9yeF33Qo
PTuNIVpGZ5mNfl3ipPriAyaPcDXE1v4bT7vzIpREUe1hxRoaRrPLK902tB/YO5B7
hci+1VjJhe1rCM9AiODXnkhdt6s7xL+6SUES6EFvY5gslSpiscejqGWK2YANaqKx
nmTP0KLi0Ow0ymr8QbPe6c/7RJfEsgDMKeQqqJ5wv8erOtyrmcF1UP0zxF9pMPXz
Nzpz/nqOGCyel5RiHOptqVFte/4hsbs7zRoBJdnOmOmDUp8E6clx8eALlj4cvAbl
GdIxbdp2AFIom1t1m+Incqm5VO8tUwYLG/VnghPp7vkieqbreWyjxb+fg6DDvW37
/dKwCIjAM6KVnCfQnY6EAPwqW8FiKlbmyPhU792T4BA2LqHJkNCfXEWT8OengxsQ
jrOWxjEg5vyIg1qeYf3eA0H6q3/us5V1FwivItgK6SVjiPZnaSrGKXTotgxU5Cr8
7lkgWhb6X5VbLFjKcTLudTb+5HHVmtk+8wN9ZHBJ/7d/iBpO+jPXu1QKyCQZ9ek1
hAv58TwnGiBJMlzKY4otAhHKOY/0EtWqy2JssOK0i6xdp2R11ZgiSo/rGDyWkbsT
5TQjQZ5A2JPI6jSlcOEIERjPCrbDx2PvKR4qRXOp+uDMGNum5sUkqjF5VtqV0T+L
KBdiKIPk/7xogxqxjWNiCCy3e+xQNq4zkBq4ewUJs+rK4wFPkhCjlMtWXVdF3LEM
rx/efSCam135ZX2sAZrwU09n+VpqRH5IJwoY2/n3AtY/g421TWjHzKXfi8Je98TH
yt7/dtYPpw0QOqxGMlXu1m5s5Sx25noLAdlPkfe1MhkDrinE30DbF7CqkdgPlyKS
7x13sLvJJPhaZo+6HPkzGyLVMVQ1jSum0X4yQ+9BhHypvLgd2flp37m7ZMLykeMB
HJttmsA/droEAE9Da07X7A9D+R3Zvs4Kdh9waXKPUPQIpx5xk5iXNMu6Yqpu5a4d
wa84tKoMQuGUXnZLE8dMNjhj2+uBTzZJHpuCaKyyMbhMum4uKB1MsEKKsD+2iQWu
XbKditDr94WyvEnsp84zwswmqwIc2x2GtqLJH0Hz/r/I6QAwDLcObiKQH4Uct7gU
wlxq7Pqtt03xbZkIbz/YQiopvZBrBUJiLyzg9s+x/Y3rFzcr061RAFhs2AQH4kYy
VGEelixbxgVbYu70hZ/cnkjTSzoCIXSWP2DgEnAKzIAymrwGbJShqR/YKsqhITBk
7XJwCFgSULZWtpVwo/x3qrD+j0tEp5uuT7Q204HoiDRXMkRZzVrlDnv8kXxqIXaO
iD3k7HTmrkw91pJQzZ6i3Q==
-----END ENCRYPTED PRIVATE KEY-----

View File

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 12 px
* Bpp: 4
* Opts: --bpp 4 --size 12 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°èéêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz :-%, --format lvgl -o montserrat_medium_12.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
* Opts: --bpp 4 --size 12 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°éèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'(): --format lvgl -o montserrat_medium_12.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -32,12 +32,22 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x43, 0x90, 0x2a, 0x0, 0x49, 0x1, 0xb0, 0x47,
0x0, 0xc1, 0x0, 0x7b, 0xb1,
/* U+0027 "'" */
0x3c, 0x3b, 0x3b, 0x15,
/* U+0028 "(" */
0xa, 0x71, 0xf1, 0x5c, 0x9, 0x80, 0xb6, 0xc,
0x40, 0xd4, 0xc, 0x40, 0xb6, 0x9, 0x80, 0x5b,
0x1, 0xf1, 0xa, 0x70,
/* U+0029 ")" */
0x6b, 0x0, 0xf2, 0xb, 0x60, 0x7a, 0x5, 0xc0,
0x4d, 0x3, 0xe0, 0x4d, 0x5, 0xc0, 0x7a, 0xb,
0x60, 0xf1, 0x6b, 0x0,
/* U+002C "," */
0x18, 0x4, 0xf1, 0xd, 0x3, 0x80,
/* U+002D "-" */
0x4f, 0xfd, 0x2, 0x22,
/* U+002E "." */
0x2a, 0x4, 0xd0,
@ -471,13 +481,6 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0xc5, 0xd0, 0x0, 0x0, 0xe, 0x92, 0x3a, 0x20,
0x2b, 0xfe, 0x90,
/* U+00EA "ê" */
0x0, 0x4f, 0xa0, 0x0, 0x2c, 0x29, 0x60, 0x0,
0x0, 0x0, 0x0, 0x2b, 0xfd, 0x50, 0xe, 0x81,
0x4e, 0x45, 0xc0, 0x0, 0x6b, 0x7f, 0xee, 0xee,
0xc5, 0xd0, 0x0, 0x0, 0xe, 0x92, 0x3a, 0x20,
0x2b, 0xfe, 0x90,
/* U+00FB "û" */
0x1, 0xdd, 0x10, 0x0, 0xa5, 0x4b, 0x0, 0x0,
0x0, 0x0, 0xf, 0x30, 0x2, 0xf0, 0xf3, 0x0,
@ -535,116 +538,116 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */,
{.bitmap_index = 0, .adv_w = 52, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 0, .adv_w = 162, .box_w = 10, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 45, .adv_w = 44, .box_w = 3, .box_h = 4, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 51, .adv_w = 74, .box_w = 4, .box_h = 2, .ofs_x = 0, .ofs_y = 2},
{.bitmap_index = 55, .adv_w = 44, .box_w = 3, .box_h = 2, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 58, .adv_w = 128, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 94, .adv_w = 71, .box_w = 4, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 112, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 144, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 176, .adv_w = 128, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 212, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 244, .adv_w = 118, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 280, .adv_w = 115, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 312, .adv_w = 124, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 348, .adv_w = 118, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 380, .adv_w = 44, .box_w = 3, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 391, .adv_w = 141, .box_w = 10, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 436, .adv_w = 145, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 472, .adv_w = 139, .box_w = 9, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 513, .adv_w = 159, .box_w = 9, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 554, .adv_w = 129, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 586, .adv_w = 122, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 618, .adv_w = 148, .box_w = 9, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 659, .adv_w = 156, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 695, .adv_w = 60, .box_w = 2, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 704, .adv_w = 98, .box_w = 6, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 731, .adv_w = 138, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 767, .adv_w = 114, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 799, .adv_w = 183, .box_w = 10, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 844, .adv_w = 156, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 880, .adv_w = 161, .box_w = 10, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 925, .adv_w = 139, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 961, .adv_w = 161, .box_w = 10, .box_h = 12, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1021, .adv_w = 140, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1057, .adv_w = 119, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1089, .adv_w = 113, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1121, .adv_w = 152, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1157, .adv_w = 137, .box_w = 10, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1202, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1265, .adv_w = 129, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1301, .adv_w = 124, .box_w = 9, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1342, .adv_w = 126, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1378, .adv_w = 115, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1403, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1438, .adv_w = 110, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1463, .adv_w = 131, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1503, .adv_w = 118, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1528, .adv_w = 68, .box_w = 5, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1553, .adv_w = 132, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1593, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1628, .adv_w = 54, .box_w = 3, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1643, .adv_w = 55, .box_w = 5, .box_h = 13, .ofs_x = -2, .ofs_y = -3},
{.bitmap_index = 1676, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1711, .adv_w = 54, .box_w = 2, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1721, .adv_w = 203, .box_w = 11, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1760, .adv_w = 131, .box_w = 7, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1785, .adv_w = 122, .box_w = 8, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1813, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 1848, .adv_w = 131, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1888, .adv_w = 79, .box_w = 4, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1902, .adv_w = 96, .box_w = 6, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1923, .adv_w = 79, .box_w = 5, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1946, .adv_w = 130, .box_w = 7, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1971, .adv_w = 107, .box_w = 8, .box_h = 7, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1999, .adv_w = 173, .box_w = 11, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2038, .adv_w = 106, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2063, .adv_w = 107, .box_w = 8, .box_h = 10, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 2103, .adv_w = 100, .box_w = 6, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2124, .adv_w = 80, .box_w = 5, .box_h = 5, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 2137, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2172, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2207, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2242, .adv_w = 130, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2277, .adv_w = 216, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 2375, .adv_w = 240, .box_w = 15, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 2458, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2}
{.bitmap_index = 45, .adv_w = 40, .box_w = 2, .box_h = 4, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 49, .adv_w = 65, .box_w = 3, .box_h = 13, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 69, .adv_w = 65, .box_w = 3, .box_h = 13, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 89, .adv_w = 44, .box_w = 3, .box_h = 4, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 95, .adv_w = 44, .box_w = 3, .box_h = 2, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 98, .adv_w = 128, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 134, .adv_w = 71, .box_w = 4, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 152, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 184, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 216, .adv_w = 128, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 252, .adv_w = 110, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 284, .adv_w = 118, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 320, .adv_w = 115, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 352, .adv_w = 124, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 388, .adv_w = 118, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 420, .adv_w = 44, .box_w = 3, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 431, .adv_w = 141, .box_w = 10, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 476, .adv_w = 145, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 512, .adv_w = 139, .box_w = 9, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 553, .adv_w = 159, .box_w = 9, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 594, .adv_w = 129, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 626, .adv_w = 122, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 658, .adv_w = 148, .box_w = 9, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 699, .adv_w = 156, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 735, .adv_w = 60, .box_w = 2, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 744, .adv_w = 98, .box_w = 6, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 771, .adv_w = 138, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 807, .adv_w = 114, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 839, .adv_w = 183, .box_w = 10, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 884, .adv_w = 156, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 920, .adv_w = 161, .box_w = 10, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 965, .adv_w = 139, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1001, .adv_w = 161, .box_w = 10, .box_h = 12, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1061, .adv_w = 140, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1097, .adv_w = 119, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1129, .adv_w = 113, .box_w = 7, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1161, .adv_w = 152, .box_w = 8, .box_h = 9, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1197, .adv_w = 137, .box_w = 10, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1242, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1305, .adv_w = 129, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1341, .adv_w = 124, .box_w = 9, .box_h = 9, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1382, .adv_w = 126, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1418, .adv_w = 115, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1443, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1478, .adv_w = 110, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1503, .adv_w = 131, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1543, .adv_w = 118, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1568, .adv_w = 68, .box_w = 5, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1593, .adv_w = 132, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1633, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1668, .adv_w = 54, .box_w = 3, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1683, .adv_w = 55, .box_w = 5, .box_h = 13, .ofs_x = -2, .ofs_y = -3},
{.bitmap_index = 1716, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1751, .adv_w = 54, .box_w = 2, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1761, .adv_w = 203, .box_w = 11, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1800, .adv_w = 131, .box_w = 7, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1825, .adv_w = 122, .box_w = 8, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1853, .adv_w = 131, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 1888, .adv_w = 131, .box_w = 8, .box_h = 10, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 1928, .adv_w = 79, .box_w = 4, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1942, .adv_w = 96, .box_w = 6, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1963, .adv_w = 79, .box_w = 5, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1986, .adv_w = 130, .box_w = 7, .box_h = 7, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2011, .adv_w = 107, .box_w = 8, .box_h = 7, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2039, .adv_w = 173, .box_w = 11, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2078, .adv_w = 106, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2103, .adv_w = 107, .box_w = 8, .box_h = 10, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 2143, .adv_w = 100, .box_w = 6, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2164, .adv_w = 80, .box_w = 5, .box_h = 5, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 2177, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2212, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2247, .adv_w = 130, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2282, .adv_w = 216, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 2380, .adv_w = 240, .box_w = 15, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 2463, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2}
};
/*---------------------
* CHARACTER MAPPING
*--------------------*/
static const uint16_t unicode_list_0[] = {
0x0, 0x5, 0xc, 0xd, 0xe
static const uint8_t glyph_id_ofs_list_0[] = {
0, 0, 0, 0, 0, 1, 0, 2,
3, 4, 0, 0, 5, 0, 6, 0,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17
};
static const uint16_t unicode_list_4[] = {
0x0, 0x38, 0x39, 0x3a, 0x4b, 0xef65, 0xf012, 0xf4c5
static const uint16_t unicode_list_3[] = {
0x0, 0x38, 0x39, 0x4b, 0xef65, 0xf012, 0xf4c5
};
/*Collect the unicode lists and glyph_id offsets*/
static const lv_font_fmt_txt_cmap_t cmaps[] =
{
{
.range_start = 32, .range_length = 15, .glyph_id_start = 1,
.unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 5, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 32, .range_length = 27, .glyph_id_start = 1,
.unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 27, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL
},
{
.range_start = 48, .range_length = 11, .glyph_id_start = 6,
.range_start = 65, .range_length = 26, .glyph_id_start = 19,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 65, .range_length = 26, .glyph_id_start = 17,
.range_start = 97, .range_length = 26, .glyph_id_start = 45,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 97, .range_length = 26, .glyph_id_start = 43,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 176, .range_length = 62662, .glyph_id_start = 69,
.unicode_list = unicode_list_4, .glyph_id_ofs_list = NULL, .list_length = 8, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 176, .range_length = 62662, .glyph_id_start = 71,
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 7, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};
@ -656,254 +659,275 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
/*Map glyph_ids to kern left classes*/
static const uint8_t kern_left_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 0,
5, 6, 7, 8, 9, 10, 11, 4,
12, 13, 14, 15, 16, 17, 18, 19,
20, 20, 21, 22, 23, 20, 20, 16,
24, 16, 25, 26, 27, 21, 28, 28,
29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 32, 38, 38, 39, 35, 32,
32, 33, 33, 40, 41, 42, 43, 38,
44, 44, 45, 44, 46, 47, 36, 36,
36, 38, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 0, 7, 8, 9, 10, 11, 12,
13, 6, 14, 15, 16, 17, 18, 19,
20, 21, 22, 22, 23, 24, 25, 22,
22, 18, 26, 18, 27, 28, 29, 23,
30, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 34, 40, 40, 41,
37, 34, 34, 35, 35, 42, 43, 44,
45, 40, 46, 46, 47, 46, 48, 49,
38, 38, 40, 0, 0, 0
};
/*Map glyph_ids to kern right classes*/
static const uint8_t kern_right_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 5,
6, 7, 8, 9, 4, 10, 11, 12,
13, 14, 15, 16, 15, 15, 15, 16,
15, 15, 17, 15, 15, 15, 15, 16,
15, 16, 15, 18, 19, 20, 21, 21,
22, 23, 24, 25, 26, 27, 27, 27,
0, 27, 26, 28, 29, 26, 26, 30,
30, 27, 30, 27, 30, 31, 32, 33,
34, 34, 35, 34, 36, 37, 27, 27,
27, 33, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 7, 8, 9, 10, 11, 6, 12,
13, 14, 15, 16, 17, 18, 17, 17,
17, 18, 17, 17, 19, 17, 17, 17,
17, 18, 17, 18, 17, 20, 21, 22,
23, 23, 24, 25, 26, 27, 28, 29,
29, 29, 0, 29, 28, 30, 31, 28,
28, 32, 32, 29, 32, 29, 32, 33,
34, 35, 36, 36, 37, 36, 38, 39,
29, 29, 35, 0, 0, 0
};
/*Kern values between classes*/
static const int8_t kern_class_values[] =
{
-23, 6, 4, 0, -4, 2, 2, 6,
4, -3, 4, 0, 0, 0, 0, 0,
-23, -5, 0, -4, 6, 0, -4, 2,
2, 6, 4, -3, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -5, -12, 0, -1,
-2, -2, 2, 2, -2, 0, -2, 2,
0, 0, 0, 0, 0, 0, -5, 5,
9, 0, 0, -11, 1, 9, 4, 3,
-8, 1, 9, 1, 8, 2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4, 0, 0,
0, 0, 0, 0, 2, 0, 0, -4,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -12, -7, -1, 1, 1, -3, -2,
-4, 1, 0, -2, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-2, 1, 0, -1, -1, -2, 0, 0,
-1, 0, 0, 0, -2, 0, 0, -4,
0, -4, 0, -5, -6, -6, -4, 0,
0, 0, 0, -2, 0, 0, 2, 0,
1, -2, 0, 1, 2, 2, -1, -1,
0, -7, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -12, -11, 0, 0,
0, -2, -2, 2, 2, -2, 0, -2,
2, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -12, 0, 1, 0, 0, -2,
0, -1, -1, -2, 0, 0, -1, 0,
0, 0, -2, 0, 0, -4, 0, -4,
0, -5, -6, -6, -4, 0, 0, 0,
0, -2, 0, 0, 2, 0, 1, -2,
0, 1, 2, 0, 0, 0, 2, -1,
0, 0, 0, -4, 0, -1, 0, 0,
0, 1, 0, 0, 2, 0, -1, 0,
-2, 0, -3, 0, 0, 0, -2, 0,
0, 0, 0, 0, -1, 1, -1, -1,
0, -2, 0, 0, 0, 0, -1, -1,
0, -2, -2, 0, 0, 0, 1, 0,
0, 0, 0, -1, 0, -2, -2, -2,
0, 0, 0, 0, 0, -1, 0, 0,
0, 0, -1, -2, 0, -3, -6, 4,
2, 0, -5, -1, -2, 0, -1, -9,
2, -1, 1, 0, 0, 2, 1, -1,
-10, 0, -10, -2, -17, -1, 5, 0,
2, 0, 0, 0, 0, 0, 0, -3,
-2, 0, -6, -2, 0, 0, 0, 0,
-1, -1, 0, -1, -2, 0, 0, 0,
0, 0, 0, -2, 0, -2, 0, -1,
-2, -2, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -2, -2, 0, -2,
-4, 2, 1, 0, 0, 0, 0, 0,
0, -2, -2, 0, 0, 0, 0, 0,
-1, -1, 0, -2, -2, 0, 0, 0,
1, 0, 0, 0, 0, -1, 0, -2,
-2, -2, 0, 0, 0, 0, 0, -1,
0, 0, 0, 0, -1, -2, 0, -3,
-6, -6, 0, 0, 4, 0, -5, -1,
-2, 0, -1, -9, 2, -1, 1, 0,
0, 2, 1, -1, -10, 0, -10, -2,
-17, -1, 5, 0, 2, 0, 0, 0,
0, 0, 0, -3, -2, 0, -6, -2,
0, 0, 0, 0, 0, 0, -1, -1,
0, -1, -2, 0, 0, 0, 0, 0,
0, -2, 0, -2, 0, -1, -2, -2,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -2, -2, 0, -2, -4, -1,
0, 0, 2, 0, 0, 0, 0, 0,
0, -1, 0, 0, 0, 1, 0, 0,
0, 0, -2, 0, -2, -1, -2, 0,
0, 0, 2, 0, -2, 0, 0, 0,
0, -2, -3, 0, -4, 1, -10, -10,
-4, 2, 0, -2, -12, -3, 0, -3,
0, -4, -12, 0, -3, -5, -1, 0,
0, 1, -1, 2, -1, -7, 0, -10,
-5, -4, -5, -6, -2, -5, 0, -4,
-5, 1, -2, 2, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -1,
0, 0, -1, 0, -2, 0, -3, -4,
-4, -1, 0, 0, 0, 0, -2, 0,
0, 0, 0, 1, -1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0, 0, 0,
0, -2, -3, 0, -4, 1, 6, 0,
0, -10, -4, 2, 0, -2, -12, -3,
0, -3, 0, -4, -12, 0, -3, -5,
-1, 0, 0, 1, -1, 2, -1, -7,
0, -10, -5, -4, -5, -6, -2, -5,
0, -4, -5, 1, -2, 1, 0, 0,
2, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -1, 0, 0, -1, 0,
-2, 0, -3, -4, -4, -1, 0, 0,
0, 0, -2, 0, 0, 0, 0, 1,
-1, 0, 0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6, -3, -2,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -8, 0, 0, 6, -2,
-8, 0, 2, -3, 0, -10, -1, -2,
2, 2, 0, -2, 3, 0, -7, -3,
-7, -6, -8, 0, 0, 0, -1, 0,
0, 0, -1, -1, -2, -5, -6, 0,
-18, 0, 1, 0, 0, 0, 0, 0,
-18, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, 0, -1, -2, -3,
0, 0, 0, 0, 0, -2, 0, -1,
-2, -3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2,
-1, -4, 2, -1, -1, -5, -2, 0,
-2, -2, -1, -3, 0, -3, 0, -1,
-2, -1, -1, -3, -2, 0, -1, 0,
-4, 0, 0, 0, -4, 0, -3, 0,
-3, -3, 2, 0, -4, 1, 0, -2,
-2, -2, 0, 0, 0, 0, 0, 0,
-2, 0, 0, -3, 0, -2, 0, -4,
-5, -6, -2, 0, 0, 0, 0, 15,
0, 0, 1, 0, 0, -2, 0, 2,
0, 2, -4, -3, 0, -1, -2, -6,
0, 0, 0, 0, 2, -4, 2, -1,
-1, -5, -2, 0, -2, -2, -1, -3,
0, -3, 0, -1, -2, -1, -1, -3,
-2, 0, -1, 0, -4, 0, 0, 0,
-4, 0, -3, 0, -3, -3, 2, 0,
-3, 0, 2, -4, 0, -2, -2, -2,
0, 0, 0, 0, 0, 0, -2, 0,
0, -3, 0, -2, 0, -4, -5, -6,
-2, 0, 0, 0, 0, 15, 0, 0,
1, 0, 0, -2, 0, 2, 0, 0,
0, 0, 2, -3, 0, -1, -2, -6,
-1, -1, -1, -1, -1, 0, 0, -1,
0, 0, 0, 0, -2, -2, -2, 0,
-1, 0, -1, 0, 0, 0, -1, -2,
-1, -2, -2, -2, 0, 0, -2, 0,
-2, 3, 0, 0, -9, -3, 2, -3,
1, 0, -6, 0, -2, -3, -1, 1,
0, 0, -3, 0, 0, -4, 0, -3,
-2, -3, -2, -2, 0, -3, 1, -4,
-3, 6, 0, 2, 0, 0, 0, 0,
-1, -2, -2, -2, 0, 0, 8, 0,
-1, -2, -2, 3, 0, 0, -9, -3,
2, -3, 1, 0, -6, 0, -2, -3,
-1, 1, 0, 0, -3, 0, 0, -4,
0, -3, -2, -3, -2, -2, 0, -3,
1, -4, -3, 6, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -1, 0, 0, 0, 0,
0, -1, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, 0, 0, 0, 0, -2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -3, 0, 0, 0, 0, -2, 0,
0, -2, -2, 0, 0, 0, 0, 0,
-1, 0, 0, 0, 0, 0, -1, 0,
0, 0, 0, -6, -4, 4, 0, -1,
-9, 0, 0, -4, -2, 0, -5, 0,
-5, 0, -3, -8, -2, -8, -7, -9,
0, -2, 0, -4, -2, -1, -2, -3,
-5, -3, -7, -8, -4, -2, 0, 6,
-2, -4, -7, 0, 1, -6, 0, -10,
-1, -2, 4, 1, 0, -2, 0, -1,
-12, -2, -10, -2, -14, 0, 1, 0,
-1, 0, 0, 0, 0, -1, -1, -7,
-1, 0, -12, 0, -5, -1, 0, 0,
-1, -3, -6, -2, 0, -1, 0, 0,
-9, -2, 0, -6, 0, -6, -2, -3,
-5, -2, -3, -3, 0, -2, -4, -2,
-4, 0, 1, 0, -1, -6, 0, 4,
0, 0, 0, 0, 0, 0, -4, 4,
0, -1, -9, 0, 0, -4, -2, 0,
-5, 0, -5, 0, -3, -8, -2, -8,
-7, -9, 0, -2, 0, -4, -2, -1,
-2, -3, -5, -3, -7, -8, -4, -2,
0, 0, 0, 0, 6, -4, -7, 0,
1, -6, 0, -10, -1, -2, 4, 1,
0, -2, 0, -1, -12, -2, -10, -2,
-14, 0, 1, 0, -1, 0, 0, 0,
0, -1, -1, -7, -1, 0, -12, 0,
0, 0, -2, -5, 0, 0, -1, -3,
-6, -2, 0, -1, 0, 0, -9, -2,
0, -6, 0, -6, -2, -3, -5, -2,
-3, -3, 0, -2, -4, -2, -4, 0,
1, 0, -1, -6, 0, 4, 0, 0,
0, 0, 0, 0, 0, 0, -1, -4,
0, 0, 0, 0, 0, 0, 0, 0,
-2, 0, -2, 0, 0, -4, -2, 0,
-1, 0, 0, 0, 0, 0, 0, 1,
0, 0, 0, 0, 3, 0, 4, 3,
0, -2, 0, -1, 2, 0, -2, 0,
-2, -1, 0, 0, 0, 0, 0, -2,
0, 0, -2, -3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -2, -2,
0, -3, 0, -6, -6, -4, 8, 3,
2, -17, -1, 4, -2, 0, -2, -7,
0, -2, -2, -2, 2, -2, -2, -6,
-2, 0, -5, 0, -11, -2, 6, -2,
-7, 1, -2, -6, -6, -2, 8, 0,
-7, -4, -5, 6, 0, 1, -14, -2,
2, -3, -1, -4, -7, -3, -4, -3,
-3, -2, 0, 0, -4, -4, -2, -11,
0, -11, -3, 0, -7, -11, -1, -6,
-3, -6, -5, 5, 0, 0, -3, -6,
0, 0, 0, 0, 3, 0, -6, 0,
0, 4, 0, -2, 0, -1, 2, 0,
-2, 0, -2, -1, 0, 0, 0, 0,
0, -2, 0, 0, -2, -3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-2, -2, 0, -3, 0, 2, -3, 0,
-6, -4, 8, 3, 2, -17, -1, 4,
-2, 0, -2, -7, 0, -2, -2, -2,
2, -2, -2, -6, -2, 0, -5, 0,
-11, -2, 6, -2, -7, 1, -2, -6,
-6, -2, 8, 0, 0, 0, 2, -7,
-5, 6, 0, 1, -14, -2, 2, -3,
-1, -4, -7, -3, -4, -3, -3, -2,
0, 0, -4, -4, -2, -11, 0, -11,
-3, 0, -7, -11, -1, -6, -3, -6,
-5, 5, 0, 0, -2, 0, 0, -6,
2, 0, 0, -10, 0, -2, -4, -3,
-1, -6, -4, -5, 0, -2, -6, -2,
-4, -4, -6, -2, -3, 0, -6, -2,
0, -2, -4, -4, -5, -5, -7, -2,
-4, 0, -7, -6, -6, 6, -2, 1,
-18, -3, 4, -4, -3, -7, -8, -2,
-6, -2, -3, -2, -2, -4, -6, -1,
0, -12, 0, -12, -4, 5, -7, -13,
-4, -7, -8, -10, -6, 4, 0, 4,
-2, -4, 4, 0, 0, -6, -1, 0,
-1, 0, 1, 0, 0, -2, 0, 0,
0, 0, 0, -2, 0, 0, 0, 0,
-2, 0, 0, 0, 0, -1, -1, -2,
0, 0, 0, -5, 0, 0, 0, -4,
-1, 0, 0, 0, -4, 0, -2, 0,
-4, 0, 0, -2, 1, -7, -6, 6,
-2, 1, -18, -3, 4, -4, -3, -7,
-8, -2, -6, -2, -3, -2, -2, -4,
-6, -1, 0, -12, 0, -12, -4, 5,
-7, -13, -4, -7, -8, -10, -6, 4,
0, 0, 0, 0, 4, -4, 4, 0,
0, -6, -1, 0, -1, 0, 1, 0,
0, -2, 0, 0, 0, 0, 0, -2,
0, 0, 0, 0, -2, 0, 0, 0,
0, -1, -1, -2, 0, 0, 0, -5,
0, 0, 0, 0, 0, -4, -1, 0,
0, 0, -4, 0, -2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, -2, 0, 0, -4,
-5, -2, 2, 0, -5, -2, -4, 0,
0, 0, 0, 1, 0, 0, 0, 0,
0, 0, -2, 0, 0, -4, -5, -3,
0, 0, -2, 0, -5, -2, -4, 0,
0, -5, 0, -2, 0, -2, 0, 0,
0, 0, -16, -4, -8, -2, -7, 0,
-1, 0, 0, 0, 0, 0, 0, 0,
0, -3, -3, -2, -3, 0, 4, -2,
-1, -4, -1, -3, -4, 0, -2, -1,
-1, 1, 0, 0, -1, 0, 0, -17,
-2, -3, 0, -4, 0, 0, -1, -2,
0, 0, 0, 0, 1, 0, -1, -3,
-1, 3, 0, 0, 0, 0, 0, 0,
0, -3, -3, -2, -3, 0, 0, 0,
-4, 4, -1, -4, -1, -3, -4, 0,
-2, -1, -1, 1, 0, 0, -1, 0,
0, -17, -2, -3, 0, -4, 0, 0,
-1, -2, 0, 0, 0, 0, 1, 0,
-1, -3, -1, 3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 2, 0, 0, 0, 0, 0, -1,
0, 2, 0, -5, -2, -4, 0, 0,
-5, 0, -2, 0, 0, 0, 0, 0,
0, -19, 0, -4, -7, -10, 0, -3,
0, 0, 0, 0, 0, 0, 0, 0,
-2, -3, -1, -3, 3, -2, -2, 2,
0, 0, 0, 0, 0, 2, 0, 0,
0, 0, 0, -1, -4, 0, 0, 0,
0, -5, -2, -4, 0, 0, -5, 0,
-2, 0, 0, 0, 0, 0, 0, -19,
0, -4, -7, -10, 0, -3, 0, 0,
0, 0, 0, 0, 0, 0, -2, -3,
-1, -3, 3, 0, 0, 6, -2, 2,
9, 3, 4, -5, 2, 8, 2, 6,
4, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -2, 0, -2, 15,
8, 15, 0, 0, 0, 2, 0, 0,
7, 0, 0, 0, 0, -1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -3, -16, -2, -2, -8, -9,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2,
-4, -2, 2, 3, 2, -6, 0, 0,
-2, 2, 0, 0, 0, 0, 0, 0,
-5, 0, -2, -1, -4, 0, -2, 0,
-4, -1, 0, -1, -3, 0, -2, -5,
-4, -2, 0, 0, 0, 0, 0, -1,
7, 0, 0, 0, 0, 0, 0, -1,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -3, -16, -2, -2,
-8, -9, 0, 0, 0, 0, 0, 10,
-8, -9, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -2, -2, 1, -1, 1, -1, -5,
0, 0, 0, 0, 2, -2, 2, 3,
2, -6, 0, 0, -2, 2, 0, 0,
0, 0, 0, 0, -5, 0, -2, -1,
-4, 0, -2, 0, -4, -1, 0, -1,
-3, 0, -2, -5, -4, -2, 0, 0,
0, 0, 0, 0, 0, -1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -3, -16, -2, -2, -8, -9,
0, 0, 0, 0, 0, 10, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-2, -2, -2, 1, -1, 1, -1, -5,
0, 4, 0, 2, 1, -8, -2, -5,
0, -3, -7, -4, -5, -8, -7, 0,
-2, -1, -2, -1, 0, -1, -1, 3,
0, 3, -1, 0, 6, 0, 0, 0,
0, -1, -2, -2, 0, 0, -5, 0,
-1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -1, -2, -2, 0, 0,
-5, 0, -1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -2, -2,
0, -2, 0, 2, -2, -3, -4, -1,
0, -6, -1, -4, -1, -2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -3, 0, 0, 0,
0, -2, 0, -2, 0, 0, -1, 0,
-6, -2, 1, 2, 2, 0, -5, 1,
3, 1, 6, 1, -5, 0, -1, 0,
-1, -8, 0, 0, -6, -5, 0, -3,
0, -3, 0, -3, 0, -1, 3, 0,
-2, -6, -2, 7, 0, 0, -4, -2,
-2, -2, 0, -2, 0, 0, 0, 0,
2, -3, -4, -1, 0, -6, -1, -4,
-1, -2, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-3, 0, 0, 0, 0, -2, 0, -2,
0, 0, -1, 0, 0, 0, 0, -6,
1, 2, 2, 0, -5, 1, 3, 1,
6, 1, -5, 0, -1, 0, -1, -8,
0, 0, -6, -5, 0, -3, 0, -3,
0, -3, 0, -1, 3, 0, -2, -6,
-2, 7, 0, 0, 0, 0, 0, -2,
2, 0, 0, -6, 0, -1, -1, 0,
-2, 0, 0, -2, 0, -2, -8, -2,
-4, 0, -6, 0, -2, 0, -3, 0,
1, 0, -2, 0, -2, -6, 0, -2,
2, 0, 1, -2, 0, -2, -1, 0,
-2, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 1, 0, -2,
-1, 0, -2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, 0, 0, 0, 0,
0, 0, -2, -2, 0, 0, 4, -12,
0, 1, 8, 6, 3, -8, 1, 8,
0, 7, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, 0, 0, -2, -2, 0, 0,
4, 4, 0, 0, -12, 1, 8, 6,
3, -8, 1, 8, 0, 7, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0
0, 0, 0, 0, 0, 0, 0
};
@ -913,8 +937,8 @@ static const lv_font_fmt_txt_kern_classes_t kern_classes =
.class_pair_values = kern_class_values,
.left_class_mapping = kern_left_class_mapping,
.right_class_mapping = kern_right_class_mapping,
.left_class_cnt = 47,
.right_class_cnt = 37,
.left_class_cnt = 49,
.right_class_cnt = 39,
};
/*--------------------
@ -936,7 +960,7 @@ static lv_font_fmt_txt_dsc_t font_dsc = {
.cmaps = cmaps,
.kern_dsc = &kern_classes,
.kern_scale = 16,
.cmap_num = 5,
.cmap_num = 4,
.bpp = 4,
.kern_classes = 1,
.bitmap_format = 0,

View File

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 18 px
* Bpp: 4
* Opts: --bpp 4 --size 18 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°èéêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz :-%, --format lvgl -o montserrat_medium_18.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
* Opts: --bpp 4 --size 18 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°éèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'(): --format lvgl -o montserrat_medium_18.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -39,13 +39,29 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x5, 0xe1, 0x0, 0x1f, 0x50, 0x0, 0x2, 0xbf,
0xc3, 0x0,
/* U+0027 "'" */
0xda, 0xd9, 0xd9, 0xc8, 0xc8, 0x0,
/* U+0028 "(" */
0x0, 0x6f, 0x40, 0xd, 0xc0, 0x4, 0xf6, 0x0,
0x9f, 0x20, 0xd, 0xd0, 0x0, 0xfb, 0x0, 0x2f,
0x80, 0x3, 0xf7, 0x0, 0x4f, 0x60, 0x4, 0xf6,
0x0, 0x3f, 0x70, 0x2, 0xf8, 0x0, 0xf, 0xb0,
0x0, 0xdd, 0x0, 0x8, 0xf1, 0x0, 0x3f, 0x60,
0x0, 0xdc, 0x0, 0x6, 0xf4,
/* U+0029 ")" */
0x3f, 0x70, 0x0, 0xbe, 0x0, 0x5, 0xf5, 0x0,
0x1f, 0xa0, 0x0, 0xce, 0x0, 0x9, 0xf1, 0x0,
0x7f, 0x30, 0x6, 0xf4, 0x0, 0x5f, 0x50, 0x5,
0xf5, 0x0, 0x6f, 0x40, 0x7, 0xf3, 0x0, 0x9f,
0x10, 0xc, 0xe0, 0x1, 0xfa, 0x0, 0x5f, 0x50,
0xb, 0xe0, 0x3, 0xf7, 0x0,
/* U+002C "," */
0x1, 0x10, 0xe, 0xf1, 0xf, 0xf2, 0x7, 0xe0,
0xb, 0x90, 0xe, 0x40,
/* U+002D "-" */
0x88, 0x88, 0x7f, 0xff, 0xfe,
/* U+002E "." */
0x5, 0x60, 0x1f, 0xf2, 0xc, 0xd0,
@ -770,18 +786,6 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x9, 0x10, 0x0, 0xdf, 0xda, 0xae, 0xf6, 0x0,
0x0, 0x7d, 0xff, 0xc5, 0x0,
/* U+00EA "ê" */
0x0, 0x0, 0xbf, 0xc0, 0x0, 0x0, 0x0, 0xae,
0x4d, 0xb0, 0x0, 0x0, 0x49, 0x10, 0x18, 0x40,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8,
0xdf, 0xe9, 0x10, 0x0, 0x1d, 0xfb, 0x8a, 0xfe,
0x20, 0xa, 0xf3, 0x0, 0x3, 0xfb, 0x0, 0xfa,
0x0, 0x0, 0x9, 0xf1, 0x3f, 0xff, 0xff, 0xff,
0xff, 0x33, 0xfa, 0x33, 0x33, 0x33, 0x30, 0xf,
0xd0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0x90, 0x0,
0x9, 0x10, 0x0, 0xdf, 0xda, 0xae, 0xf6, 0x0,
0x0, 0x7d, 0xff, 0xc5, 0x0,
/* U+00FB "û" */
0x0, 0x4, 0xff, 0x50, 0x0, 0x0, 0x3f, 0x87,
0xf5, 0x0, 0x0, 0x75, 0x0, 0x47, 0x0, 0x0,
@ -881,116 +885,116 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */,
{.bitmap_index = 0, .adv_w = 77, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 0, .adv_w = 243, .box_w = 15, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 98, .adv_w = 65, .box_w = 4, .box_h = 6, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 110, .adv_w = 110, .box_w = 5, .box_h = 2, .ofs_x = 1, .ofs_y = 4},
{.bitmap_index = 115, .adv_w = 65, .box_w = 4, .box_h = 3, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 121, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 199, .adv_w = 107, .box_w = 5, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 232, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 297, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 362, .adv_w = 193, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 440, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 505, .adv_w = 178, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 577, .adv_w = 172, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 649, .adv_w = 185, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 721, .adv_w = 178, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 793, .adv_w = 65, .box_w = 4, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 813, .adv_w = 211, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 911, .adv_w = 218, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 989, .adv_w = 208, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1074, .adv_w = 238, .box_w = 13, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1159, .adv_w = 193, .box_w = 11, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1231, .adv_w = 183, .box_w = 10, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1296, .adv_w = 222, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1381, .adv_w = 234, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1459, .adv_w = 89, .box_w = 3, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1479, .adv_w = 148, .box_w = 9, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1538, .adv_w = 207, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1616, .adv_w = 171, .box_w = 10, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1681, .adv_w = 275, .box_w = 15, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1779, .adv_w = 234, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1857, .adv_w = 242, .box_w = 15, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1955, .adv_w = 208, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2033, .adv_w = 242, .box_w = 15, .box_h = 16, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 2153, .adv_w = 209, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2231, .adv_w = 179, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2303, .adv_w = 169, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2375, .adv_w = 228, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2453, .adv_w = 205, .box_w = 14, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2544, .adv_w = 324, .box_w = 20, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2674, .adv_w = 194, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2752, .adv_w = 186, .box_w = 13, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2837, .adv_w = 189, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2915, .adv_w = 172, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2965, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3042, .adv_w = 164, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3092, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3169, .adv_w = 176, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3224, .adv_w = 102, .box_w = 7, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3273, .adv_w = 199, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = -4},
{.bitmap_index = 3350, .adv_w = 196, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3420, .adv_w = 80, .box_w = 3, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3441, .adv_w = 82, .box_w = 6, .box_h = 18, .ofs_x = -2, .ofs_y = -4},
{.bitmap_index = 3495, .adv_w = 177, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3572, .adv_w = 80, .box_w = 3, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3593, .adv_w = 304, .box_w = 17, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3678, .adv_w = 196, .box_w = 10, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3728, .adv_w = 183, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3783, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 3860, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = -4},
{.bitmap_index = 3937, .adv_w = 118, .box_w = 6, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3967, .adv_w = 144, .box_w = 9, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4012, .adv_w = 119, .box_w = 7, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4054, .adv_w = 195, .box_w = 10, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4104, .adv_w = 161, .box_w = 12, .box_h = 10, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4164, .adv_w = 259, .box_w = 17, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4249, .adv_w = 159, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4299, .adv_w = 161, .box_w = 12, .box_h = 14, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 4383, .adv_w = 150, .box_w = 9, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4428, .adv_w = 121, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 6},
{.bitmap_index = 4453, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4530, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4607, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4684, .adv_w = 195, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4754, .adv_w = 324, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 4954, .adv_w = 360, .box_w = 23, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5150, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3}
{.bitmap_index = 98, .adv_w = 60, .box_w = 2, .box_h = 6, .ofs_x = 1, .ofs_y = 7},
{.bitmap_index = 104, .adv_w = 97, .box_w = 5, .box_h = 18, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 149, .adv_w = 97, .box_w = 5, .box_h = 18, .ofs_x = 0, .ofs_y = -4},
{.bitmap_index = 194, .adv_w = 65, .box_w = 4, .box_h = 6, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 206, .adv_w = 65, .box_w = 4, .box_h = 3, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 212, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 290, .adv_w = 107, .box_w = 5, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 323, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 388, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 453, .adv_w = 193, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 531, .adv_w = 165, .box_w = 10, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 596, .adv_w = 178, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 668, .adv_w = 172, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 740, .adv_w = 185, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 812, .adv_w = 178, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 884, .adv_w = 65, .box_w = 4, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 904, .adv_w = 211, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1002, .adv_w = 218, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1080, .adv_w = 208, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1165, .adv_w = 238, .box_w = 13, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1250, .adv_w = 193, .box_w = 11, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1322, .adv_w = 183, .box_w = 10, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1387, .adv_w = 222, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1472, .adv_w = 234, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1550, .adv_w = 89, .box_w = 3, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1570, .adv_w = 148, .box_w = 9, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1629, .adv_w = 207, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1707, .adv_w = 171, .box_w = 10, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1772, .adv_w = 275, .box_w = 15, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1870, .adv_w = 234, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1948, .adv_w = 242, .box_w = 15, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2046, .adv_w = 208, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2124, .adv_w = 242, .box_w = 15, .box_h = 16, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 2244, .adv_w = 209, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2322, .adv_w = 179, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2394, .adv_w = 169, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2466, .adv_w = 228, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2544, .adv_w = 205, .box_w = 14, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2635, .adv_w = 324, .box_w = 20, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2765, .adv_w = 194, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 2843, .adv_w = 186, .box_w = 13, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2928, .adv_w = 189, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3006, .adv_w = 172, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3056, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3133, .adv_w = 164, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3183, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3260, .adv_w = 176, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3315, .adv_w = 102, .box_w = 7, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3364, .adv_w = 199, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = -4},
{.bitmap_index = 3441, .adv_w = 196, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3511, .adv_w = 80, .box_w = 3, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3532, .adv_w = 82, .box_w = 6, .box_h = 18, .ofs_x = -2, .ofs_y = -4},
{.bitmap_index = 3586, .adv_w = 177, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3663, .adv_w = 80, .box_w = 3, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3684, .adv_w = 304, .box_w = 17, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3769, .adv_w = 196, .box_w = 10, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3819, .adv_w = 183, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3874, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 3951, .adv_w = 196, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = -4},
{.bitmap_index = 4028, .adv_w = 118, .box_w = 6, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4058, .adv_w = 144, .box_w = 9, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4103, .adv_w = 119, .box_w = 7, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4145, .adv_w = 195, .box_w = 10, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4195, .adv_w = 161, .box_w = 12, .box_h = 10, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4255, .adv_w = 259, .box_w = 17, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4340, .adv_w = 159, .box_w = 10, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4390, .adv_w = 161, .box_w = 12, .box_h = 14, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 4474, .adv_w = 150, .box_w = 9, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4519, .adv_w = 121, .box_w = 7, .box_h = 7, .ofs_x = 0, .ofs_y = 6},
{.bitmap_index = 4544, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4621, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4698, .adv_w = 195, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4768, .adv_w = 324, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 4968, .adv_w = 360, .box_w = 23, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5164, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3}
};
/*---------------------
* CHARACTER MAPPING
*--------------------*/
static const uint16_t unicode_list_0[] = {
0x0, 0x5, 0xc, 0xd, 0xe
static const uint8_t glyph_id_ofs_list_0[] = {
0, 0, 0, 0, 0, 1, 0, 2,
3, 4, 0, 0, 5, 0, 6, 0,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17
};
static const uint16_t unicode_list_4[] = {
0x0, 0x38, 0x39, 0x3a, 0x4b, 0xef65, 0xf012, 0xf4c5
static const uint16_t unicode_list_3[] = {
0x0, 0x38, 0x39, 0x4b, 0xef65, 0xf012, 0xf4c5
};
/*Collect the unicode lists and glyph_id offsets*/
static const lv_font_fmt_txt_cmap_t cmaps[] =
{
{
.range_start = 32, .range_length = 15, .glyph_id_start = 1,
.unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 5, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 32, .range_length = 27, .glyph_id_start = 1,
.unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 27, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL
},
{
.range_start = 48, .range_length = 11, .glyph_id_start = 6,
.range_start = 65, .range_length = 26, .glyph_id_start = 19,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 65, .range_length = 26, .glyph_id_start = 17,
.range_start = 97, .range_length = 26, .glyph_id_start = 45,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 97, .range_length = 26, .glyph_id_start = 43,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 176, .range_length = 62662, .glyph_id_start = 69,
.unicode_list = unicode_list_4, .glyph_id_ofs_list = NULL, .list_length = 8, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 176, .range_length = 62662, .glyph_id_start = 71,
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 7, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};
@ -1002,254 +1006,275 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
/*Map glyph_ids to kern left classes*/
static const uint8_t kern_left_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 0,
5, 6, 7, 8, 9, 10, 11, 4,
12, 13, 14, 15, 16, 17, 18, 19,
20, 20, 21, 22, 23, 20, 20, 16,
24, 16, 25, 26, 27, 21, 28, 28,
29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 32, 38, 38, 39, 35, 32,
32, 33, 33, 40, 41, 42, 43, 38,
44, 44, 45, 44, 46, 47, 36, 36,
36, 38, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 0, 7, 8, 9, 10, 11, 12,
13, 6, 14, 15, 16, 17, 18, 19,
20, 21, 22, 22, 23, 24, 25, 22,
22, 18, 26, 18, 27, 28, 29, 23,
30, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 34, 40, 40, 41,
37, 34, 34, 35, 35, 42, 43, 44,
45, 40, 46, 46, 47, 46, 48, 49,
38, 38, 40, 0, 0, 0
};
/*Map glyph_ids to kern right classes*/
static const uint8_t kern_right_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 5,
6, 7, 8, 9, 4, 10, 11, 12,
13, 14, 15, 16, 15, 15, 15, 16,
15, 15, 17, 15, 15, 15, 15, 16,
15, 16, 15, 18, 19, 20, 21, 21,
22, 23, 24, 25, 26, 27, 27, 27,
0, 27, 26, 28, 29, 26, 26, 30,
30, 27, 30, 27, 30, 31, 32, 33,
34, 34, 35, 34, 36, 37, 27, 27,
27, 33, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 7, 8, 9, 10, 11, 6, 12,
13, 14, 15, 16, 17, 18, 17, 17,
17, 18, 17, 17, 19, 17, 17, 17,
17, 18, 17, 18, 17, 20, 21, 22,
23, 23, 24, 25, 26, 27, 28, 29,
29, 29, 0, 29, 28, 30, 31, 28,
28, 32, 32, 29, 32, 29, 32, 33,
34, 35, 36, 36, 37, 36, 38, 39,
29, 29, 35, 0, 0, 0
};
/*Kern values between classes*/
static const int8_t kern_class_values[] =
{
-35, 9, 6, 0, -6, 3, 3, 10,
6, -5, 6, 0, 0, 0, 0, 0,
-35, -8, 0, -6, 9, 0, -6, 3,
3, 10, 6, -5, 6, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -8, -18, 0, -2,
-3, -4, 3, 3, -3, 0, -4, 3,
0, 0, 0, 0, 0, 0, -8, 8,
13, 0, 0, -16, 2, 14, 6, 5,
-12, 2, 14, 1, 12, 3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 6, 0, 0,
0, 0, 0, 0, 3, 0, 0, -6,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -18, -11, -2, 1, 2, -5, -4,
-6, 2, 0, -3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-3, 2, 0, -1, -1, -3, 0, 0,
-2, 0, 0, 0, -2, 0, 0, -7,
0, -6, 0, -7, -10, -10, -5, 0,
0, 0, 0, -2, 0, 0, 3, 0,
2, -3, 0, 1, 3, 3, -2, -1,
0, -11, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -18, -16, 0, 0,
0, -3, -4, 3, 3, -3, 0, -4,
3, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -18, 0, 2, 0, 0, -3,
0, -1, -1, -3, 0, 0, -2, 0,
0, 0, -2, 0, 0, -7, 0, -6,
0, -7, -10, -10, -5, 0, 0, 0,
0, -2, 0, 0, 3, 0, 2, -3,
0, 1, 3, 0, 0, 0, 3, -1,
0, 0, 0, -5, 0, -1, 0, 0,
0, 1, 0, 0, 4, 0, -2, 0,
-3, 0, -5, 0, 0, 0, -3, 0,
0, 0, 0, 0, -1, 1, -2, -2,
0, -3, 0, 0, 0, 0, -1, -1,
0, -3, -3, 0, 0, 0, 1, 0,
0, 0, 0, -2, 0, -3, -3, -3,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, -2, -4, 0, -4, -9, 6,
3, 0, -7, -1, -3, 0, -1, -14,
3, -2, 2, 0, 0, 3, 1, -2,
-15, 0, -15, -2, -25, -2, 8, 0,
4, 0, 0, 0, 0, 1, 0, -5,
-4, 0, -9, -3, 0, 0, 0, 0,
-1, -1, 0, -1, -4, 0, 0, 0,
0, 0, 0, -3, 0, -3, 0, -2,
-3, -2, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -2, -2, 0, -3,
-6, 3, 1, 0, 0, 0, 0, 0,
0, -3, -3, 0, 0, 0, 0, 0,
-1, -1, 0, -3, -3, 0, 0, 0,
1, 0, 0, 0, 0, -2, 0, -3,
-3, -3, 0, 0, 0, 0, 0, -2,
0, 0, 0, 0, -2, -4, 0, -4,
-9, -9, 0, 0, 6, 0, -7, -1,
-3, 0, -1, -14, 3, -2, 2, 0,
0, 3, 1, -2, -15, 0, -15, -2,
-25, -2, 8, 0, 4, 0, 0, 0,
0, 1, 0, -5, -4, 0, -9, -3,
0, 0, 0, 0, 0, 0, -1, -1,
0, -1, -4, 0, 0, 0, 0, 0,
0, -3, 0, -3, 0, -2, -3, -2,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -2, -2, 0, -3, -6, -2,
0, 0, 3, 0, 0, 0, 0, 0,
0, -2, 0, 0, 0, 2, 0, 0,
0, 0, -3, 0, -3, -2, -3, 0,
0, 0, 2, 0, -2, 0, 0, 0,
0, -3, -4, 0, -5, 1, -15, -14,
-6, 3, 0, -2, -19, -5, 0, -5,
0, -6, -18, 0, -5, -8, -2, 0,
0, 1, -1, 2, -2, -11, 0, -14,
-7, -6, -7, -9, -3, -8, -1, -5,
-8, 2, -3, 3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -1,
0, 0, -1, 0, -3, 0, -5, -6,
-6, -1, 0, 0, 0, 0, -2, 0,
0, 0, 0, 1, -2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
2, 0, 0, 0, 0, 0, 0, 0,
0, -3, -4, 0, -5, 1, 9, 0,
0, -15, -6, 3, 0, -2, -19, -5,
0, -5, 0, -6, -18, 0, -5, -8,
-2, 0, 0, 1, -1, 2, -2, -11,
0, -14, -7, -6, -7, -9, -3, -8,
-1, -5, -8, 2, -3, 1, 0, 0,
3, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -1, 0, 0, -1, 0,
-3, 0, -5, -6, -6, -1, 0, 0,
0, 0, -2, 0, 0, 0, 0, 1,
-2, 0, 0, 0, 3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 10, -5, -2,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -12, 0, 0, 10, -2,
-12, 0, 3, -4, 0, -14, -1, -4,
3, 4, 0, -3, 4, 0, -10, -4,
-11, -10, -12, 0, 0, 0, -1, 0,
0, 0, -1, -1, -3, -8, -10, -1,
-27, 0, 1, 0, 0, 0, 0, 0,
-27, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -3, 0, -1, -3, -4,
0, 0, 0, 0, 0, -3, 0, -1,
-3, -4, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4,
-1, -6, 3, -2, -1, -7, -3, 0,
-4, -3, -2, -5, 0, -4, 0, -1,
-2, -1, -2, -5, -3, 0, -2, 0,
-6, 0, 0, 0, -6, 0, -5, 0,
-5, -5, 3, 0, -6, 2, 0, -3,
-3, -3, 0, 0, 0, 0, 0, 0,
-3, 0, 0, -4, 0, -3, 0, -6,
-7, -9, -2, 0, 0, 0, 0, 23,
0, 0, 1, 0, 0, -4, 0, 3,
0, 3, -6, -4, 0, -2, -3, -9,
0, 0, 0, 0, 4, -6, 3, -2,
-1, -7, -3, 0, -4, -3, -2, -5,
0, -4, 0, -1, -2, -1, -2, -5,
-3, 0, -2, 0, -6, 0, 0, 0,
-6, 0, -5, 0, -5, -5, 3, 0,
-5, 0, 3, -6, 0, -3, -3, -3,
0, 0, 0, 0, 0, 0, -3, 0,
0, -4, 0, -3, 0, -6, -7, -9,
-2, 0, 0, 0, 0, 23, 0, 0,
1, 0, 0, -4, 0, 3, 0, 0,
0, 0, 3, -4, 0, -2, -3, -9,
-2, -2, -2, -1, -2, 0, 0, -1,
0, 0, 0, 0, -3, -2, -2, 0,
-2, 0, -2, 0, 0, 0, -2, -3,
-2, -3, -3, -3, 0, 0, -3, 0,
-4, 4, 0, 0, -14, -5, 3, -5,
2, 0, -9, 0, -2, -4, -1, 1,
0, 0, -5, 0, 0, -5, 0, -5,
-3, -4, -3, -3, 0, -5, 1, -5,
-5, 9, 0, 3, 0, 0, 0, 0,
-2, -3, -3, -3, 0, 0, 12, 0,
-2, -3, -4, 4, 0, 0, -14, -5,
3, -5, 2, 0, -9, 0, -2, -4,
-1, 1, 0, 0, -5, 0, 0, -5,
0, -5, -3, -4, -3, -3, 0, -5,
1, -5, -5, 9, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, 0, 0, 0, 0,
0, -2, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, 0, 0, 0, 0, -2, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -4, 0, 0, 0, 0, -4, 0,
0, -3, -3, 0, 0, 0, 0, 0,
-1, 0, 0, 0, 0, 0, -2, 0,
0, 0, 0, -10, -6, 6, 1, -2,
-14, 0, 0, -6, -3, 0, -8, 0,
-7, 0, -4, -12, -3, -12, -11, -14,
0, -4, 0, -7, -3, -1, -3, -5,
-8, -5, -11, -12, -7, -3, 0, 9,
-3, -6, -11, 0, 1, -9, 0, -14,
-2, -3, 6, 1, 0, -4, 0, -2,
-19, -3, -15, -3, -21, 0, 1, 0,
-2, 0, 0, 0, 0, -1, -2, -11,
-2, 0, -19, 0, -8, -1, 0, 0,
-1, -4, -9, -3, 0, -2, 0, 0,
-13, -3, 0, -10, 0, -9, -2, -5,
-7, -3, -5, -4, 0, -3, -5, -3,
-5, 0, 1, 0, -2, -10, 0, 6,
0, 0, -1, 0, 0, 0, -2, -6,
0, 0, 0, 0, 0, 0, -6, 6,
1, -2, -14, 0, 0, -6, -3, 0,
-8, 0, -7, 0, -4, -12, -3, -12,
-11, -14, 0, -4, 0, -7, -3, -1,
-3, -5, -8, -5, -11, -12, -7, -3,
0, 0, 0, 0, 9, -6, -11, 0,
1, -9, 0, -14, -2, -3, 6, 1,
0, -4, 0, -2, -19, -3, -15, -3,
-21, 0, 1, 0, -2, 0, 0, 0,
0, -1, -2, -11, -2, 0, -19, 0,
0, 0, -3, -8, 0, 0, -1, -4,
-9, -3, 0, -2, 0, 0, -13, -3,
0, -10, 0, -9, -2, -5, -7, -3,
-5, -4, 0, -3, -5, -3, -5, 0,
1, 0, -2, -10, 0, 6, 0, 0,
0, 0, 0, 0, 0, 0, -2, -6,
0, 0, 0, 0, 0, 0, 0, 0,
-3, 0, -3, 0, 0, -6, -3, 0,
-1, 0, 0, 0, 0, 0, 0, 1,
0, 0, 0, 0, 4, 0, 6, 5,
0, -3, 0, -2, 3, 0, -3, 0,
-3, -1, 0, 0, 0, 0, 0, -3,
0, 0, -4, -4, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -3, -3,
0, -4, 0, -9, -10, -6, 12, 5,
3, -25, -2, 6, -3, 0, -3, -10,
0, -3, -3, -3, 3, -4, -2, -9,
-2, 0, -8, 0, -16, -4, 8, -4,
-11, 1, -4, -10, -10, -3, 12, 0,
-11, -7, -7, 9, 0, 1, -21, -2,
3, -5, -2, -7, -11, -4, -6, -4,
-4, -2, 0, 0, -7, -6, -3, -16,
0, -16, -4, 0, -10, -17, -1, -9,
-5, -10, -8, 8, 0, 0, -5, -10,
0, 0, 0, 0, 4, 0, -9, 0,
0, 6, 0, -3, 0, -2, 3, 0,
-3, 0, -3, -1, 0, 0, 0, 0,
0, -3, 0, 0, -4, -4, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-3, -3, 0, -4, 0, 2, -5, 0,
-9, -6, 12, 5, 3, -25, -2, 6,
-3, 0, -3, -10, 0, -3, -3, -3,
3, -4, -2, -9, -2, 0, -8, 0,
-16, -4, 8, -4, -11, 1, -4, -10,
-10, -3, 12, 0, 0, 0, 2, -11,
-7, 9, 0, 1, -21, -2, 3, -5,
-2, -7, -11, -4, -6, -4, -4, -2,
0, 0, -7, -6, -3, -16, 0, -16,
-4, 0, -10, -17, -1, -9, -5, -10,
-8, 8, 0, 0, -3, 0, 0, -10,
3, 0, 0, -15, 0, -3, -6, -5,
-2, -10, -7, -7, 0, -4, -9, -3,
-7, -5, -9, -3, -5, 0, -9, -3,
0, -3, -6, -7, -8, -8, -11, -4,
-6, 0, -11, -9, -10, 10, -3, 1,
-27, -5, 6, -6, -5, -11, -12, -3,
-9, -3, -4, -2, -3, -6, -9, -1,
0, -19, 0, -17, -7, 7, -11, -20,
-6, -10, -12, -14, -10, 6, 0, 6,
-3, -5, 6, 0, 0, -9, -1, 0,
-1, 0, 1, 0, 0, -2, 0, 0,
0, 0, 0, -3, 0, 0, 1, 0,
-3, 0, 0, 0, 0, -2, -2, -3,
0, 0, 0, -8, 0, 0, 0, -6,
-1, 0, 0, 0, -6, 0, -3, 0,
-6, 0, 0, -3, 2, -11, -10, 10,
-3, 1, -27, -5, 6, -6, -5, -11,
-12, -3, -9, -3, -4, -2, -3, -6,
-9, -1, 0, -19, 0, -17, -7, 7,
-11, -20, -6, -10, -12, -14, -10, 6,
0, 0, 0, 0, 6, -5, 6, 0,
0, -9, -1, 0, -1, 0, 1, 0,
0, -2, 0, 0, 0, 0, 0, -3,
0, 0, 1, 0, -3, 0, 0, 0,
0, -2, -2, -3, 0, 0, 0, -8,
0, 0, 0, 0, 0, -6, -1, 0,
0, 0, -6, 0, -3, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, -3, 0, 0, -5,
-8, -3, 3, 0, -8, -3, -7, 0,
0, 0, 0, 1, 0, 0, 0, 0,
0, 0, -3, 0, 0, -5, -8, -4,
0, 0, -3, 0, -8, -3, -7, 0,
0, -8, 0, -3, 0, -3, 0, 0,
0, 0, -23, -5, -12, -3, -10, 0,
-1, 0, 0, 0, 0, 0, 0, 0,
0, -4, -5, -2, -5, 0, 6, -3,
-2, -7, -2, -5, -5, 0, -3, -1,
-2, 2, 0, 0, -1, 0, 0, -25,
-2, -4, 0, -6, 0, 0, -2, -2,
0, 0, 0, 0, 2, 0, -2, -5,
-2, 5, 0, 0, 0, 0, 0, 0,
0, -4, -5, -2, -5, 0, 0, 0,
-6, 6, -2, -7, -2, -5, -5, 0,
-3, -1, -2, 2, 0, 0, -1, 0,
0, -25, -2, -4, 0, -6, 0, 0,
-2, -2, 0, 0, 0, 0, 2, 0,
-2, -5, -2, 5, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 4, 0, 0, 0, 0, 0, -2,
0, 3, 0, -8, -3, -6, 0, 0,
-8, 0, -3, 0, 0, 0, 0, 0,
0, -28, 0, -6, -11, -14, 0, -4,
0, 0, 0, 0, 0, 0, 0, 0,
-3, -4, -1, -4, 5, -3, -3, 3,
0, 0, 0, 0, 0, 4, 0, 0,
0, 0, 0, -2, -6, 0, 0, 0,
0, -8, -3, -6, 0, 0, -8, 0,
-3, 0, 0, 0, 0, 0, 0, -28,
0, -6, -11, -14, 0, -4, 0, 0,
0, 0, 0, 0, 0, 0, -3, -4,
-1, -4, 5, 0, 0, 9, -3, 3,
14, 5, 6, -8, 3, 12, 3, 8,
6, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -3, 0, -2, 23,
12, 23, 0, 0, 0, 3, 0, 0,
11, 0, 0, 0, 0, -2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -5, -24, -3, -2, -12, -14,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3,
-7, -3, 2, 5, 3, -9, 0, -1,
-2, 3, 0, 0, 0, 0, 0, 0,
-7, 0, -3, -2, -6, 0, -3, 0,
-6, -2, 0, -2, -5, 0, -3, -8,
-6, -3, 0, 0, 0, 0, 0, -2,
11, 0, 0, 0, 0, 0, 0, -2,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -5, -24, -3, -2,
-12, -14, 0, 0, 0, 0, 0, 14,
-12, -14, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -3, -3, 1, -2, 1, -2, -8,
0, 0, 0, 0, 3, -3, 2, 5,
3, -9, 0, -1, -2, 3, 0, 0,
0, 0, 0, 0, -7, 0, -3, -2,
-6, 0, -3, 0, -6, -2, 0, -2,
-5, 0, -3, -8, -6, -3, 0, 0,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -5, -24, -3, -2, -12, -14,
0, 0, 0, 0, 0, 14, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-3, -3, -3, 1, -2, 1, -2, -8,
1, 6, 1, 2, 1, -12, -3, -7,
0, -5, -11, -5, -8, -12, -11, 0,
-2, -2, -3, -2, 0, -2, -1, 4,
0, 4, -2, 0, 9, 0, 0, 0,
0, -2, -3, -3, 0, 0, -8, 0,
-1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, -3, -3, 0, 0,
-8, 0, -1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -3, -3,
0, -4, 0, 3, -3, -5, -5, -2,
0, -8, -2, -6, -2, -3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -5, 0, 0, 0,
0, -4, 0, -3, 0, 0, -1, 0,
-10, -4, 2, 3, 3, -1, -8, 2,
4, 2, 9, 2, -8, 0, -2, 0,
-2, -12, 0, 0, -9, -8, 0, -5,
0, -4, 0, -4, 0, -2, 4, 0,
-2, -9, -3, 11, 0, 0, -7, -3,
-3, -3, 0, -4, 0, 0, 0, 0,
3, -5, -5, -2, 0, -8, -2, -6,
-2, -3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-5, 0, 0, 0, 0, -4, 0, -3,
0, 0, -1, 0, 0, 0, 0, -10,
2, 3, 3, -1, -8, 2, 4, 2,
9, 2, -8, 0, -2, 0, -2, -12,
0, 0, -9, -8, 0, -5, 0, -4,
0, -4, 0, -2, 4, 0, -2, -9,
-3, 11, 0, 0, 0, 0, 0, -3,
2, 0, 0, -10, 0, -2, -1, 0,
-3, 0, 0, -2, 0, -3, -12, -3,
-6, 0, -9, 0, -3, 0, -5, 0,
2, 0, -3, 0, -3, -9, 0, -3,
3, 0, 1, -4, 0, -3, -2, 0,
-3, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 1, 0, -3,
-2, 0, -3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, 0, 0, 0, 0,
1, 0, -3, -3, 0, 0, 7, -18,
0, 1, 12, 9, 5, -12, 2, 12,
0, 11, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, 1, 0, -3, -3, 0, 0,
7, 6, 0, 0, -18, 1, 12, 9,
5, -12, 2, 12, 0, 11, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0
0, 0, 0, 0, 0, 0, 0
};
@ -1259,8 +1284,8 @@ static const lv_font_fmt_txt_kern_classes_t kern_classes =
.class_pair_values = kern_class_values,
.left_class_mapping = kern_left_class_mapping,
.right_class_mapping = kern_right_class_mapping,
.left_class_cnt = 47,
.right_class_cnt = 37,
.left_class_cnt = 49,
.right_class_cnt = 39,
};
/*--------------------
@ -1282,7 +1307,7 @@ static lv_font_fmt_txt_dsc_t font_dsc = {
.cmaps = cmaps,
.kern_dsc = &kern_classes,
.kern_scale = 16,
.cmap_num = 5,
.cmap_num = 4,
.bpp = 4,
.kern_classes = 1,
.bitmap_format = 0,

View File

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 24 px
* Bpp: 4
* Opts: --bpp 4 --size 24 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°èéêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz :-%, --format lvgl -o montserrat_medium_24.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
* Opts: --bpp 4 --size 24 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°éèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'(): --format lvgl -o montserrat_medium_24.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -48,14 +48,36 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x0, 0x3, 0xfa, 0x0, 0x0, 0x0, 0x7, 0xdf,
0xd6, 0x0,
/* U+0027 "'" */
0x7f, 0x87, 0xf7, 0x6f, 0x76, 0xf7, 0x6f, 0x65,
0xf6, 0x38, 0x30,
/* U+0028 "(" */
0x0, 0x2f, 0xf1, 0x0, 0x9f, 0x90, 0x1, 0xff,
0x20, 0x6, 0xfc, 0x0, 0xc, 0xf7, 0x0, 0xf,
0xf3, 0x0, 0x3f, 0xf0, 0x0, 0x6f, 0xd0, 0x0,
0x8f, 0xb0, 0x0, 0x9f, 0xa0, 0x0, 0xaf, 0x90,
0x0, 0xbf, 0x80, 0x0, 0xaf, 0x90, 0x0, 0x9f,
0xa0, 0x0, 0x8f, 0xb0, 0x0, 0x6f, 0xd0, 0x0,
0x3f, 0xf0, 0x0, 0xf, 0xf3, 0x0, 0xc, 0xf7,
0x0, 0x6, 0xfc, 0x0, 0x1, 0xff, 0x20, 0x0,
0x9f, 0x90, 0x0, 0x2f, 0xf1,
/* U+0029 ")" */
0xf, 0xf3, 0x0, 0x8, 0xfb, 0x0, 0x1, 0xff,
0x30, 0x0, 0xbf, 0x80, 0x0, 0x6f, 0xd0, 0x0,
0x1f, 0xf2, 0x0, 0xe, 0xf5, 0x0, 0xb, 0xf8,
0x0, 0x9, 0xfa, 0x0, 0x8, 0xfb, 0x0, 0x7,
0xfc, 0x0, 0x6, 0xfd, 0x0, 0x7, 0xfc, 0x0,
0x8, 0xfb, 0x0, 0x9, 0xfa, 0x0, 0xb, 0xf8,
0x0, 0xe, 0xf5, 0x0, 0x1f, 0xf2, 0x0, 0x6f,
0xd0, 0x0, 0xbf, 0x80, 0x1, 0xff, 0x30, 0x8,
0xfb, 0x0, 0xf, 0xf3, 0x0,
/* U+002C "," */
0x3b, 0x80, 0xcf, 0xf3, 0xaf, 0xf3, 0xf, 0xe0,
0x1f, 0x90, 0x5f, 0x40, 0x9e, 0x0,
/* U+002D "-" */
0x0, 0x0, 0x0, 0xa, 0xff, 0xff, 0xfd, 0xaf,
0xff, 0xff, 0xd0,
/* U+002E "." */
0x4, 0x10, 0x9f, 0xf1, 0xdf, 0xf4, 0x6f, 0xb0,
@ -1138,23 +1160,6 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x0, 0x9f, 0xff, 0xff, 0xff, 0xf4, 0x0, 0x0,
0x3a, 0xdf, 0xfd, 0x81, 0x0,
/* U+00EA "ê" */
0x0, 0x0, 0x4f, 0xfd, 0x10, 0x0, 0x0, 0x0,
0x4f, 0xe8, 0xfd, 0x10, 0x0, 0x0, 0x4f, 0xd2,
0x4, 0xfd, 0x10, 0x0, 0x2, 0x30, 0x0, 0x1,
0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x5b, 0xef, 0xda, 0x30, 0x0, 0x0,
0xaf, 0xff, 0xff, 0xff, 0x80, 0x0, 0xaf, 0xe6,
0x10, 0x28, 0xff, 0x70, 0x4f, 0xf2, 0x0, 0x0,
0x5, 0xff, 0x1a, 0xf9, 0x0, 0x0, 0x0, 0xc,
0xf6, 0xdf, 0xcb, 0xbb, 0xbb, 0xbb, 0xdf, 0x9f,
0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xdf, 0x60,
0x0, 0x0, 0x0, 0x0, 0xa, 0xfc, 0x0, 0x0,
0x0, 0x0, 0x0, 0x4f, 0xf6, 0x0, 0x0, 0x0,
0x60, 0x0, 0xaf, 0xfa, 0x31, 0x14, 0xbf, 0x80,
0x0, 0x9f, 0xff, 0xff, 0xff, 0xf4, 0x0, 0x0,
0x3a, 0xdf, 0xfd, 0x81, 0x0,
/* U+00FB "û" */
0x0, 0x0, 0x8f, 0xfa, 0x0, 0x0, 0x0, 0x0,
0x9f, 0xba, 0xfa, 0x0, 0x0, 0x0, 0x9f, 0x90,
@ -1310,116 +1315,116 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */,
{.bitmap_index = 0, .adv_w = 103, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 0, .adv_w = 324, .box_w = 20, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 170, .adv_w = 87, .box_w = 4, .box_h = 7, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 184, .adv_w = 147, .box_w = 7, .box_h = 3, .ofs_x = 1, .ofs_y = 6},
{.bitmap_index = 195, .adv_w = 87, .box_w = 4, .box_h = 4, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 203, .adv_w = 256, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 322, .adv_w = 142, .box_w = 7, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 382, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 493, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 604, .adv_w = 257, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 740, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 851, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 970, .adv_w = 230, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1089, .adv_w = 247, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1208, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1327, .adv_w = 87, .box_w = 4, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1353, .adv_w = 281, .box_w = 19, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1515, .adv_w = 291, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 1643, .adv_w = 278, .box_w = 16, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1779, .adv_w = 317, .box_w = 17, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 1924, .adv_w = 257, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2035, .adv_w = 244, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2146, .adv_w = 296, .box_w = 16, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2282, .adv_w = 312, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2410, .adv_w = 119, .box_w = 3, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2436, .adv_w = 197, .box_w = 11, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2530, .adv_w = 276, .box_w = 16, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2666, .adv_w = 228, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2777, .adv_w = 367, .box_w = 19, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2939, .adv_w = 312, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3067, .adv_w = 323, .box_w = 19, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3229, .adv_w = 277, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3357, .adv_w = 323, .box_w = 19, .box_h = 20, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 3547, .adv_w = 279, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3675, .adv_w = 238, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3794, .adv_w = 225, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3913, .adv_w = 304, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 4041, .adv_w = 273, .box_w = 19, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4203, .adv_w = 432, .box_w = 27, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4433, .adv_w = 258, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4569, .adv_w = 248, .box_w = 17, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4714, .adv_w = 252, .box_w = 15, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4842, .adv_w = 230, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4920, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5046, .adv_w = 219, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5124, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5250, .adv_w = 235, .box_w = 13, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5335, .adv_w = 136, .box_w = 10, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5425, .adv_w = 265, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = -5},
{.bitmap_index = 5551, .adv_w = 262, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5668, .adv_w = 107, .box_w = 4, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5704, .adv_w = 109, .box_w = 9, .box_h = 23, .ofs_x = -3, .ofs_y = -5},
{.bitmap_index = 5808, .adv_w = 237, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5925, .adv_w = 107, .box_w = 3, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5952, .adv_w = 406, .box_w = 22, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6095, .adv_w = 262, .box_w = 13, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6180, .adv_w = 244, .box_w = 14, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 6271, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 2, .ofs_y = -5},
{.bitmap_index = 6397, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = -5},
{.bitmap_index = 6523, .adv_w = 157, .box_w = 8, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6575, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6653, .adv_w = 159, .box_w = 10, .box_h = 16, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6733, .adv_w = 260, .box_w = 13, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6818, .adv_w = 215, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 6916, .adv_w = 345, .box_w = 22, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7059, .adv_w = 212, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7144, .adv_w = 215, .box_w = 15, .box_h = 18, .ofs_x = -1, .ofs_y = -5},
{.bitmap_index = 7279, .adv_w = 200, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7357, .adv_w = 161, .box_w = 8, .box_h = 10, .ofs_x = 1, .ofs_y = 9},
{.bitmap_index = 7397, .adv_w = 235, .box_w = 13, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 7514, .adv_w = 235, .box_w = 13, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 7631, .adv_w = 235, .box_w = 13, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 7748, .adv_w = 260, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 7865, .adv_w = 432, .box_w = 28, .box_h = 25, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 8215, .adv_w = 480, .box_w = 30, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8545, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3}
{.bitmap_index = 170, .adv_w = 81, .box_w = 3, .box_h = 7, .ofs_x = 1, .ofs_y = 10},
{.bitmap_index = 181, .adv_w = 129, .box_w = 6, .box_h = 23, .ofs_x = 2, .ofs_y = -5},
{.bitmap_index = 250, .adv_w = 130, .box_w = 6, .box_h = 23, .ofs_x = 0, .ofs_y = -5},
{.bitmap_index = 319, .adv_w = 87, .box_w = 4, .box_h = 7, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 333, .adv_w = 87, .box_w = 4, .box_h = 4, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 341, .adv_w = 256, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 460, .adv_w = 142, .box_w = 7, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 520, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 631, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 742, .adv_w = 257, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 878, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 989, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1108, .adv_w = 230, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1227, .adv_w = 247, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1346, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 1465, .adv_w = 87, .box_w = 4, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1491, .adv_w = 281, .box_w = 19, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 1653, .adv_w = 291, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 1781, .adv_w = 278, .box_w = 16, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 1917, .adv_w = 317, .box_w = 17, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2062, .adv_w = 257, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2173, .adv_w = 244, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2284, .adv_w = 296, .box_w = 16, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 2420, .adv_w = 312, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2548, .adv_w = 119, .box_w = 3, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2574, .adv_w = 197, .box_w = 11, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 2668, .adv_w = 276, .box_w = 16, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2804, .adv_w = 228, .box_w = 13, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 2915, .adv_w = 367, .box_w = 19, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3077, .adv_w = 312, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3205, .adv_w = 323, .box_w = 19, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 3367, .adv_w = 277, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3495, .adv_w = 323, .box_w = 19, .box_h = 20, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 3685, .adv_w = 279, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 3813, .adv_w = 238, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 3932, .adv_w = 225, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4051, .adv_w = 304, .box_w = 15, .box_h = 17, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 4179, .adv_w = 273, .box_w = 19, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4341, .adv_w = 432, .box_w = 27, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4571, .adv_w = 258, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4707, .adv_w = 248, .box_w = 17, .box_h = 17, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 4852, .adv_w = 252, .box_w = 15, .box_h = 17, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 4980, .adv_w = 230, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5058, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5184, .adv_w = 219, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5262, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5388, .adv_w = 235, .box_w = 13, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5473, .adv_w = 136, .box_w = 10, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5563, .adv_w = 265, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = -5},
{.bitmap_index = 5689, .adv_w = 262, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 5806, .adv_w = 107, .box_w = 4, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 5842, .adv_w = 109, .box_w = 9, .box_h = 23, .ofs_x = -3, .ofs_y = -5},
{.bitmap_index = 5946, .adv_w = 237, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6063, .adv_w = 107, .box_w = 3, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6090, .adv_w = 406, .box_w = 22, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6233, .adv_w = 262, .box_w = 13, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6318, .adv_w = 244, .box_w = 14, .box_h = 13, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 6409, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 2, .ofs_y = -5},
{.bitmap_index = 6535, .adv_w = 262, .box_w = 14, .box_h = 18, .ofs_x = 1, .ofs_y = -5},
{.bitmap_index = 6661, .adv_w = 157, .box_w = 8, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6713, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6791, .adv_w = 159, .box_w = 10, .box_h = 16, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6871, .adv_w = 260, .box_w = 13, .box_h = 13, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 6956, .adv_w = 215, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 7054, .adv_w = 345, .box_w = 22, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7197, .adv_w = 212, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7282, .adv_w = 215, .box_w = 15, .box_h = 18, .ofs_x = -1, .ofs_y = -5},
{.bitmap_index = 7417, .adv_w = 200, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7495, .adv_w = 161, .box_w = 8, .box_h = 10, .ofs_x = 1, .ofs_y = 9},
{.bitmap_index = 7535, .adv_w = 235, .box_w = 13, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 7652, .adv_w = 235, .box_w = 13, .box_h = 18, .ofs_x = 1, .ofs_y = 0},
{.bitmap_index = 7769, .adv_w = 260, .box_w = 13, .box_h = 18, .ofs_x = 2, .ofs_y = 0},
{.bitmap_index = 7886, .adv_w = 432, .box_w = 28, .box_h = 25, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 8236, .adv_w = 480, .box_w = 30, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8566, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3}
};
/*---------------------
* CHARACTER MAPPING
*--------------------*/
static const uint16_t unicode_list_0[] = {
0x0, 0x5, 0xc, 0xd, 0xe
static const uint8_t glyph_id_ofs_list_0[] = {
0, 0, 0, 0, 0, 1, 0, 2,
3, 4, 0, 0, 5, 0, 6, 0,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17
};
static const uint16_t unicode_list_4[] = {
0x0, 0x38, 0x39, 0x3a, 0x4b, 0xef65, 0xf012, 0xf4c5
static const uint16_t unicode_list_3[] = {
0x0, 0x38, 0x39, 0x4b, 0xef65, 0xf012, 0xf4c5
};
/*Collect the unicode lists and glyph_id offsets*/
static const lv_font_fmt_txt_cmap_t cmaps[] =
{
{
.range_start = 32, .range_length = 15, .glyph_id_start = 1,
.unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 5, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 32, .range_length = 27, .glyph_id_start = 1,
.unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 27, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL
},
{
.range_start = 48, .range_length = 11, .glyph_id_start = 6,
.range_start = 65, .range_length = 26, .glyph_id_start = 19,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 65, .range_length = 26, .glyph_id_start = 17,
.range_start = 97, .range_length = 26, .glyph_id_start = 45,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 97, .range_length = 26, .glyph_id_start = 43,
.unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY
},
{
.range_start = 176, .range_length = 62662, .glyph_id_start = 69,
.unicode_list = unicode_list_4, .glyph_id_ofs_list = NULL, .list_length = 8, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.range_start = 176, .range_length = 62662, .glyph_id_start = 71,
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 7, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};
@ -1431,254 +1436,275 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
/*Map glyph_ids to kern left classes*/
static const uint8_t kern_left_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 0,
5, 6, 7, 8, 9, 10, 11, 4,
12, 13, 14, 15, 16, 17, 18, 19,
20, 20, 21, 22, 23, 20, 20, 16,
24, 16, 25, 26, 27, 21, 28, 28,
29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 32, 38, 38, 39, 35, 32,
32, 33, 33, 40, 41, 42, 43, 38,
44, 44, 45, 44, 46, 47, 36, 36,
36, 38, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 0, 7, 8, 9, 10, 11, 12,
13, 6, 14, 15, 16, 17, 18, 19,
20, 21, 22, 22, 23, 24, 25, 22,
22, 18, 26, 18, 27, 28, 29, 23,
30, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 34, 40, 40, 41,
37, 34, 34, 35, 35, 42, 43, 44,
45, 40, 46, 46, 47, 46, 48, 49,
38, 38, 40, 0, 0, 0
};
/*Map glyph_ids to kern right classes*/
static const uint8_t kern_right_class_mapping[] =
{
0, 0, 1, 2, 3, 2, 4, 5,
6, 7, 8, 9, 4, 10, 11, 12,
13, 14, 15, 16, 15, 15, 15, 16,
15, 15, 17, 15, 15, 15, 15, 16,
15, 16, 15, 18, 19, 20, 21, 21,
22, 23, 24, 25, 26, 27, 27, 27,
0, 27, 26, 28, 29, 26, 26, 30,
30, 27, 30, 27, 30, 31, 32, 33,
34, 34, 35, 34, 36, 37, 27, 27,
27, 33, 0, 0, 0
0, 0, 1, 2, 3, 4, 5, 5,
6, 7, 8, 9, 10, 11, 6, 12,
13, 14, 15, 16, 17, 18, 17, 17,
17, 18, 17, 17, 19, 17, 17, 17,
17, 18, 17, 18, 17, 20, 21, 22,
23, 23, 24, 25, 26, 27, 28, 29,
29, 29, 0, 29, 28, 30, 31, 28,
28, 32, 32, 29, 32, 29, 32, 33,
34, 35, 36, 36, 37, 36, 38, 39,
29, 29, 35, 0, 0, 0
};
/*Kern values between classes*/
static const int8_t kern_class_values[] =
{
-46, 12, 8, 0, -8, 4, 4, 13,
8, -7, 8, 0, 0, 0, 0, 0,
-46, -10, 0, -8, 12, 0, -8, 4,
4, 13, 8, -7, 8, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -10, -24, 0, -3,
-5, -5, 4, 4, -3, 0, -5, 4,
0, 0, 0, 0, 0, 0, -10, 10,
17, 0, 0, -21, 3, 18, 8, 7,
-15, 3, 19, 1, 16, 4, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 8, 0, 0,
0, 0, 0, 0, 4, 0, 0, -8,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -24, -14, -3, 1, 3, -7, -5,
-8, 3, 0, -4, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-5, 3, 0, -1, -1, -4, 0, 0,
-3, 0, 0, 0, -3, 0, 0, -9,
0, -8, 0, -10, -13, -13, -7, 0,
0, 0, 0, -3, 0, 0, 4, 0,
3, -4, 0, 1, 4, 4, -3, -1,
0, -14, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -24, -21, 0, 0,
0, -5, -5, 4, 4, -3, 0, -5,
4, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -24, 0, 3, 0, 0, -5,
0, -1, -1, -4, 0, 0, -3, 0,
0, 0, -3, 0, 0, -9, 0, -8,
0, -10, -13, -13, -7, 0, 0, 0,
0, -3, 0, 0, 4, 0, 3, -4,
0, 1, 4, 0, 0, 0, 4, -1,
0, 0, 0, -7, 0, -1, 0, 0,
0, 1, 0, 0, 5, 0, -3, 0,
-5, 0, -7, 0, 0, 0, -4, 0,
0, 0, 0, 0, -1, 1, -3, -3,
0, -4, 0, 0, 0, 0, -2, -2,
0, -4, -5, 0, 0, 0, 1, 0,
0, 0, 0, -3, 0, -4, -4, -4,
0, 0, 0, 0, 0, -2, 0, 0,
0, 0, -3, -5, 0, -6, -12, 8,
4, 0, -10, -1, -5, 0, -1, -18,
4, -3, 3, 0, 0, 4, 1, -3,
-20, 0, -20, -3, -33, -3, 11, 0,
5, 0, 0, 0, 0, 1, 0, -7,
-5, 0, -12, -4, 0, 0, 0, 0,
-2, -2, 0, -2, -5, 0, 0, 0,
0, 0, 0, -4, 0, -4, 0, -3,
-5, -3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -3, -3, 0, -5,
-8, 4, 2, 0, 0, 0, 0, 0,
0, -4, -4, 0, 0, 0, 0, 0,
-2, -2, 0, -4, -5, 0, 0, 0,
1, 0, 0, 0, 0, -3, 0, -4,
-4, -4, 0, 0, 0, 0, 0, -2,
0, 0, 0, 0, -3, -5, 0, -6,
-12, -12, 0, 0, 8, 0, -10, -1,
-5, 0, -1, -18, 4, -3, 3, 0,
0, 4, 1, -3, -20, 0, -20, -3,
-33, -3, 11, 0, 5, 0, 0, 0,
0, 1, 0, -7, -5, 0, -12, -4,
0, 0, 0, 0, 0, 0, -2, -2,
0, -2, -5, 0, 0, 0, 0, 0,
0, -4, 0, -4, 0, -3, -5, -3,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -3, -3, 0, -5, -8, -3,
0, 0, 4, 0, 0, 0, 0, 0,
0, -3, 0, 0, 0, 3, 0, 0,
0, 0, -4, 0, -4, -3, -5, 0,
0, 0, 3, 0, -3, 0, 0, 0,
0, -4, -6, 0, -7, 1, -20, -19,
-8, 4, 0, -3, -25, -7, 0, -7,
0, -8, -25, 0, -7, -10, -3, 0,
0, 2, -1, 3, -3, -15, 0, -19,
-9, -8, -9, -12, -5, -10, -1, -7,
-10, 2, -4, 4, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -2,
0, 0, -1, 0, -4, 0, -7, -8,
-8, -1, 0, 0, 0, 0, -3, 0,
0, 0, 0, 2, -2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
3, 0, 0, 0, 0, 0, 0, 0,
0, -4, -6, 0, -7, 1, 12, 0,
0, -20, -8, 4, 0, -3, -25, -7,
0, -7, 0, -8, -25, 0, -7, -10,
-3, 0, 0, 2, -1, 3, -3, -15,
0, -19, -9, -8, -9, -12, -5, -10,
-1, -7, -10, 2, -4, 1, 0, 0,
4, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -2, 0, 0, -1, 0,
-4, 0, -7, -8, -8, -1, 0, 0,
0, 0, -3, 0, 0, 0, 0, 2,
-2, 0, 0, 0, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 13, -7, -3,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -17, 0, 0, 13, -3,
-16, 0, 4, -6, 0, -19, -2, -5,
4, 5, 0, -4, 6, 0, -13, -6,
-14, -13, -16, 0, 0, 0, -2, 0,
0, 0, -2, -2, -4, -10, -13, -1,
-36, 0, 1, 0, 0, 0, 0, 0,
-36, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -4, 0, -2, -4, -6,
0, 0, 0, 0, 0, -4, 0, -2,
-4, -6, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 5,
-1, -8, 4, -3, -1, -10, -4, 0,
-5, -4, -3, -7, 0, -6, 0, -1,
-3, -1, -3, -7, -5, 0, -3, 0,
-8, 0, 0, 0, -8, 0, -7, 0,
-7, -7, 4, 0, -8, 3, 0, -4,
-4, -5, 0, 0, 0, 0, 0, 0,
-4, 0, 0, -6, 0, -4, 0, -8,
-10, -12, -3, 0, 0, 0, 0, 31,
0, 0, 2, 0, 0, -5, 0, 4,
0, 4, -8, -5, 0, -3, -5, -12,
0, 0, 0, 0, 5, -8, 4, -3,
-1, -10, -4, 0, -5, -4, -3, -7,
0, -6, 0, -1, -3, -1, -3, -7,
-5, 0, -3, 0, -8, 0, 0, 0,
-8, 0, -7, 0, -7, -7, 4, 0,
-7, 0, 5, -8, 0, -4, -4, -5,
0, 0, 0, 0, 0, 0, -4, 0,
0, -6, 0, -4, 0, -8, -10, -12,
-3, 0, 0, 0, 0, 31, 0, 0,
2, 0, 0, -5, 0, 4, 0, 0,
0, 0, 4, -5, 0, -3, -5, -12,
-3, -3, -3, -1, -3, 0, 0, -1,
0, 0, 0, 0, -4, -3, -3, 0,
-3, 0, -3, 0, 0, 0, -3, -5,
-3, -3, -5, -3, 0, 0, -4, 0,
-5, 6, 0, 0, -18, -7, 4, -7,
3, 0, -12, 0, -3, -6, -1, 2,
0, 0, -7, 0, 0, -7, 0, -7,
-4, -6, -4, -4, 0, -7, 2, -7,
-7, 12, 0, 4, 0, 0, 0, 0,
-3, -3, -5, -3, 0, 0, 15, 0,
-3, -4, -5, 6, 0, 0, -18, -7,
4, -7, 3, 0, -12, 0, -3, -6,
-1, 2, 0, 0, -7, 0, 0, -7,
0, -7, -4, -6, -4, -4, 0, -7,
2, -7, -7, 12, 0, 0, 0, 0,
4, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -3, 0, 0, 0, 0,
0, -3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -3, 0, 0,
0, 0, 0, 0, 0, 0, -3, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -6, 0, 0, 0, 0, -5, 0,
0, -4, -4, 0, 0, 0, 0, 0,
-2, 0, 0, 0, 0, 0, -3, 0,
0, 0, 0, -13, -8, 8, 1, -3,
-18, 0, 0, -8, -4, 0, -11, 0,
-10, 0, -6, -17, -4, -15, -15, -18,
0, -5, 0, -9, -4, -1, -4, -7,
-10, -7, -14, -16, -9, -4, 0, 12,
-3, -8, -14, 0, 1, -12, 0, -19,
-3, -4, 8, 1, 0, -5, 0, -3,
-25, -5, -20, -4, -28, 0, 1, 0,
-3, 0, 0, 0, 0, -2, -3, -15,
-3, 0, -25, 0, -11, -1, 0, 0,
-2, -6, -12, -4, 0, -3, 0, 0,
-17, -4, 0, -13, 0, -12, -3, -7,
-10, -4, -7, -6, 0, -5, -7, -4,
-7, 0, 2, 0, -3, -13, 0, 8,
0, 0, -1, 0, 0, 0, -3, -8,
0, 0, 0, 0, 0, 0, -8, 8,
1, -3, -18, 0, 0, -8, -4, 0,
-11, 0, -10, 0, -6, -17, -4, -15,
-15, -18, 0, -5, 0, -9, -4, -1,
-4, -7, -10, -7, -14, -16, -9, -4,
0, 0, 0, 0, 12, -8, -14, 0,
1, -12, 0, -19, -3, -4, 8, 1,
0, -5, 0, -3, -25, -5, -20, -4,
-28, 0, 1, 0, -3, 0, 0, 0,
0, -2, -3, -15, -3, 0, -25, 0,
0, 0, -3, -11, 0, 0, -2, -6,
-12, -4, 0, -3, 0, 0, -17, -4,
0, -13, 0, -12, -3, -7, -10, -4,
-7, -6, 0, -5, -7, -4, -7, 0,
2, 0, -3, -13, 0, 8, 0, 0,
0, 0, 0, 0, 0, 0, -3, -8,
0, 0, 0, 0, 0, 0, 0, 0,
-4, 0, -4, 0, 0, -8, -4, 0,
-2, 0, 0, 0, 0, 0, 0, 2,
0, 0, 0, 0, 6, 0, 8, 7,
0, -4, 0, -3, 4, 0, -4, 0,
-4, -2, 0, 0, 0, 0, 0, -4,
0, 0, -5, -6, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -4, -4,
0, -6, 0, -12, -13, -8, 15, 7,
4, -33, -3, 8, -4, 0, -4, -13,
0, -4, -4, -3, 4, -5, -3, -12,
-3, 0, -11, 0, -21, -5, 11, -5,
-15, 1, -5, -13, -13, -4, 15, 0,
-14, -9, -10, 12, 0, 1, -28, -3,
4, -7, -3, -9, -14, -6, -8, -6,
-6, -3, 0, 0, -9, -8, -4, -21,
0, -21, -5, 0, -13, -22, -1, -12,
-7, -13, -11, 10, 0, 0, -7, -13,
0, 0, 0, 0, 6, 0, -12, 0,
0, 8, 0, -4, 0, -3, 4, 0,
-4, 0, -4, -2, 0, 0, 0, 0,
0, -4, 0, 0, -5, -6, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-4, -4, 0, -6, 0, 3, -6, 0,
-12, -8, 15, 7, 4, -33, -3, 8,
-4, 0, -4, -13, 0, -4, -4, -3,
4, -5, -3, -12, -3, 0, -11, 0,
-21, -5, 11, -5, -15, 1, -5, -13,
-13, -4, 15, 0, 0, 0, 3, -14,
-10, 12, 0, 1, -28, -3, 4, -7,
-3, -9, -14, -6, -8, -6, -6, -3,
0, 0, -9, -8, -4, -21, 0, -21,
-5, 0, -13, -22, -1, -12, -7, -13,
-11, 10, 0, 0, -3, 0, 0, -13,
4, 0, 0, -20, 0, -4, -8, -7,
-3, -13, -9, -10, 0, -5, -12, -4,
-9, -7, -12, -4, -7, 0, -12, -4,
0, -4, -8, -9, -10, -11, -15, -5,
-8, 0, -14, -12, -13, 13, -4, 2,
-36, -7, 8, -8, -7, -14, -16, -5,
-12, -4, -6, -3, -4, -8, -12, -1,
0, -25, 0, -23, -9, 9, -15, -26,
-8, -13, -16, -19, -13, 8, 0, 8,
-5, -7, 8, 0, 0, -12, -1, 0,
-1, 0, 1, 0, 0, -3, 0, 0,
0, 0, 0, -4, 0, 0, 1, 0,
-5, 0, 0, 0, 0, -3, -3, -5,
0, 0, 0, -11, 0, 0, 0, -8,
-2, 0, 0, 0, -8, 0, -5, 0,
-8, 0, 0, -5, 2, -14, -13, 13,
-4, 2, -36, -7, 8, -8, -7, -14,
-16, -5, -12, -4, -6, -3, -4, -8,
-12, -1, 0, -25, 0, -23, -9, 9,
-15, -26, -8, -13, -16, -19, -13, 8,
0, 0, 0, 0, 8, -7, 8, 0,
0, -12, -1, 0, -1, 0, 1, 0,
0, -3, 0, 0, 0, 0, 0, -4,
0, 0, 1, 0, -5, 0, 0, 0,
0, -3, -3, -5, 0, 0, 0, -11,
0, 0, 0, 0, 0, -8, -2, 0,
0, 0, -8, 0, -5, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0,
0, 0, 0, 0, -4, 0, 0, -7,
-10, -5, 4, 0, -10, -4, -9, 0,
0, 0, 0, 1, 0, 0, 0, 0,
0, 0, -4, 0, 0, -7, -10, -6,
0, 0, -5, 0, -10, -4, -9, 0,
0, -10, 0, -4, 0, -4, 0, 0,
0, 0, -31, -7, -15, -4, -14, 0,
-2, 0, 0, 0, 0, 0, 0, 0,
0, -6, -7, -3, -7, 0, 8, -4,
-3, -9, -3, -7, -7, 0, -5, -2,
-3, 3, 0, 0, -1, 0, 0, -34,
-3, -5, 0, -8, 0, 0, -3, -3,
0, 0, 0, 0, 3, 0, -3, -7,
-3, 7, 0, 0, 0, 0, 0, 0,
0, -6, -7, -3, -7, 0, 0, 0,
-8, 8, -3, -9, -3, -7, -7, 0,
-5, -2, -3, 3, 0, 0, -1, 0,
0, -34, -3, -5, 0, -8, 0, 0,
-3, -3, 0, 0, 0, 0, 3, 0,
-3, -7, -3, 7, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 5, 0, 0, 0, 0, 0, -3,
0, 4, 0, -10, -4, -8, 0, 0,
-11, 0, -4, 0, 0, 0, 0, 0,
0, -37, 0, -8, -14, -19, 0, -6,
0, 0, 0, 0, 0, 0, 0, 0,
-4, -6, -2, -6, 7, -4, -4, 5,
0, 0, 0, 0, 0, 5, 0, 0,
0, 0, 0, -3, -8, 0, 0, 0,
0, -10, -4, -8, 0, 0, -11, 0,
-4, 0, 0, 0, 0, 0, 0, -37,
0, -8, -14, -19, 0, -6, 0, 0,
0, 0, 0, 0, 0, 0, -4, -6,
-2, -6, 7, 0, 0, 12, -4, 5,
19, 7, 8, -10, 5, 16, 5, 11,
8, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -4, 0, -3, 31,
17, 31, 0, 0, 0, 4, 0, 0,
14, 0, 0, 0, 0, -3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -6, -32, -5, -3, -16, -19,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4,
-9, -4, 3, 7, 4, -12, 0, -1,
-3, 4, 0, 0, 0, 0, 0, 0,
-10, 0, -3, -3, -8, 0, -4, 0,
-8, -3, 0, -3, -7, 0, -4, -11,
-8, -5, 0, 0, 0, 0, 0, -3,
14, 0, 0, 0, 0, 0, 0, -3,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -6, -32, -5, -3,
-16, -19, 0, 0, 0, 0, 0, 19,
-16, -19, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, -4, -3, 1, -2, 1, -3, -10,
0, 0, 0, 0, 4, -4, 3, 7,
4, -12, 0, -1, -3, 4, 0, 0,
0, 0, 0, 0, -10, 0, -3, -3,
-8, 0, -4, 0, -8, -3, 0, -3,
-7, 0, -4, -11, -8, -5, 0, 0,
0, 0, 0, 0, 0, -3, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, -6, -32, -5, -3, -16, -19,
0, 0, 0, 0, 0, 19, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-5, -3, -4, 1, -2, 1, -3, -10,
1, 8, 1, 3, 1, -15, -5, -9,
0, -6, -15, -7, -10, -16, -15, 0,
-3, -3, -5, -3, 0, -3, -1, 6,
0, 6, -3, 0, 12, 0, 0, 0,
0, -3, -4, -4, 0, 0, -10, 0,
-2, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -3, -4, -4, 0, 0,
-10, 0, -2, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -4, -4,
0, -5, 0, 4, -4, -7, -7, -3,
0, -11, -3, -8, -3, -5, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -7, 0, 0, 0,
0, -5, 0, -4, 0, 0, -2, 0,
-13, -5, 3, 4, 4, -1, -11, 3,
6, 3, 12, 3, -10, 0, -3, 0,
-3, -15, 0, 0, -12, -10, 0, -7,
0, -6, 0, -6, 0, -3, 6, 0,
-3, -12, -4, 14, 0, 0, -9, -4,
-4, -4, 0, -5, 0, 0, 0, 0,
4, -7, -7, -3, 0, -11, -3, -8,
-3, -5, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
-7, 0, 0, 0, 0, -5, 0, -4,
0, 0, -2, 0, 0, 0, 0, -13,
3, 4, 4, -1, -11, 3, 6, 3,
12, 3, -10, 0, -3, 0, -3, -15,
0, 0, -12, -10, 0, -7, 0, -6,
0, -6, 0, -3, 6, 0, -3, -12,
-4, 14, 0, 0, 0, 0, 0, -4,
3, 0, 0, -13, 0, -3, -1, 0,
-4, 0, 0, -3, 0, -3, -16, -5,
-8, 0, -12, 0, -4, 0, -7, 0,
2, 0, -4, 0, -4, -12, 0, -4,
4, 0, 1, -5, 0, -5, -3, 0,
-5, 0, 0, 0, 0, 0, 0, 0,
4, 0, 0, 0, 0, 1, 0, -5,
-3, 0, -5, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -3, 0, 0, 0, 0,
1, 0, -4, -4, 0, 0, 9, -24,
0, 1, 17, 12, 7, -15, 3, 16,
0, 14, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -3, 0, 0,
0, 0, 1, 0, -4, -4, 0, 0,
9, 8, 0, 0, -24, 1, 17, 12,
7, -15, 3, 16, 0, 14, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0
0, 0, 0, 0, 0, 0, 0
};
@ -1688,8 +1714,8 @@ static const lv_font_fmt_txt_kern_classes_t kern_classes =
.class_pair_values = kern_class_values,
.left_class_mapping = kern_left_class_mapping,
.right_class_mapping = kern_right_class_mapping,
.left_class_cnt = 47,
.right_class_cnt = 37,
.left_class_cnt = 49,
.right_class_cnt = 39,
};
/*--------------------
@ -1711,7 +1737,7 @@ static lv_font_fmt_txt_dsc_t font_dsc = {
.cmaps = cmaps,
.kern_dsc = &kern_classes,
.kern_scale = 16,
.cmap_num = 5,
.cmap_num = 4,
.bpp = 4,
.kern_classes = 1,
.bitmap_format = 0,

View File

@ -2,7 +2,7 @@ dependencies:
espressif/esp_wifi_remote:
rules:
- if: target in ["esp32p4"]
version: "0.8.5"
version: "0.9.2"
suda-morris/am2302_rmt:
version: "^1.0.0"
@ -18,9 +18,9 @@ dependencies:
esp_lvgl_port:
rules:
- if: target in ["esp32p4"]
version: 2.5.0
version: 2.6.0
idf:
version: '5.4.*'
version: '5.5.*'
lvgl/lvgl:
version: 9.2.0
#espressif/esp32_p4_function_ev_board:

View File

@ -33,7 +33,8 @@ lv_subject_t forecastH3Subj;
lv_subject_t *tmpHSubj[3] = {&forecastH1Subj, &forecastH2Subj, &forecastH3Subj};
lv_subject_t meteoStatus;
char dateHeureStr[30];
//char dateHeureStr[30];
lv_obj_t *jour;
static lv_style_t no_padding;
static const char *TAG = "IHM";
@ -45,7 +46,7 @@ LV_IMAGE_DECLARE(wifi_ko);
static void wifiStatus_obs_cb(lv_observer_t * observer, lv_subject_t * subject)
{
ESP_LOGE(TAG, "On passe dans le callback de chgt de statut; %li", lv_subject_get_int(subject));
ESP_LOGV(TAG, "On passe dans le callback de chgt de statut; %li", lv_subject_get_int(subject));
bsp_display_lock(0);
if(lv_layer_top()!=NULL && lv_obj_get_child_cnt(lv_layer_top())){
lv_obj_t * wifiSt = lv_obj_get_child(lv_obj_get_child(lv_layer_top(), 0),2);
@ -75,6 +76,20 @@ static void wifiStatus_obs_cb(lv_observer_t * observer, lv_subject_t * subject)
//lv_obj_t * btn = lv_observer_get_target(observer);
}
static void draw_time(char* dateHeure){
if(display_lock("updateTime")){
lv_label_set_text(jour, dateHeure);
display_unlock("updateTime");
}
}
static void draw_temp(char * tempHumid){
if(display_lock("draw_temp")){
lv_label_set_text(lblTempInt2,tempHumid);
display_unlock("updateTime");
}
}
void drawIhm(void *xIHMEventQueue){
init_display();
@ -85,53 +100,55 @@ void drawIhm(void *xIHMEventQueue){
display_lock("app_main");
app_main_display();
display_unlock("app_main");
vTaskDelay(pdMS_TO_TICKS(2000));
// Show LVGL objects
if(display_lock("draw_ihm")){
draw_ihm();
display_unlock("draw_ihm");
}else{
ESP_LOGE(TAG,"Impossible d'obtenir le mutex pour draw_ihm");
}
while (1)
{
while (1){
xIPStackEvent_t xReceivedEvent;
// On cree une queue qui va permettre de recevoir les informations a afficher
xQueueReceive(xIHMEventQueue,&xReceivedEvent, portMAX_DELAY );
switch (xReceivedEvent.eEventType)
{
case IHM_EVT_WIFI_STATUS:
ESP_LOGE(TAG, "On a recu un evt wifi");
ESP_LOGV(TAG, "evt wifi -- begin");
lv_subject_set_int(&wifiStatus, (int)xReceivedEvent.pvData);
ESP_LOGV(TAG, "evt wifi -- end");
break;
case IHM_EVT_TIME_SETTED:
ESP_LOGE(TAG, "On a recu un evt timesetted");
ESP_LOGV(TAG, "evt timesetted -- begin");
draw_time(xReceivedEvent.pvData);
ESP_LOGV(TAG, "evt timesetted -- end");
break;
case IHM_EVT_OTA_STARTED:
ESP_LOGV(TAG, "evt OTA_STARTED -- begin");
app_ota_display();
ESP_LOGV(TAG, "evt OTA_STARTED -- end");
break;
case IHM_EVT_OTA_PROGRESS:
//ESP_LOGE(TAG, "evt OTA_PROGRESS -- begin");
setOTAProgress((int)xReceivedEvent.pvData);
//ESP_LOGE(TAG, "evt OTA_PROGRESS -- end");
break;
case IHM_EVT_HUMID_TEMP:
ESP_LOGV(TAG, "evt IHM_EVT_HUMID_TEMP -- begin");
draw_temp((char *)xReceivedEvent.pvData);
ESP_LOGV(TAG, "evt IHM_EVT_HUMID_TEMP -- end");
break;
default:
ESP_LOGE(TAG, "Evt inconnu");
break;
};
vTaskDelay(5/portTICK_PERIOD_MS);
ESP_LOGV(TAG,"IHM delay");
vTaskDelay(100/portTICK_PERIOD_MS);
}
}
void draw_time(char* dateHeure){
if(display_lock("updateTime")){
lv_subject_copy_string(&dateHeureSubj, dateHeure);
display_unlock("updateTime");
}
}
void draw_temp(char * tempHumid){
if(lvgl_port_lock(5)){
lv_label_set_text(lblTempInt2,tempHumid);
lvgl_port_unlock();
}
}
static void event_handler(lv_event_t *e)
{
@ -165,12 +182,12 @@ void init_display(){
//lvgl_cfg.task_priority=15;
bsp_display_cfg_t cfg = {
.lvgl_port_cfg = lvgl_cfg,
.buffer_size = BSP_LCD_DRAW_BUFF_SIZE,
.buffer_size = 1024*600,//BSP_LCD_DRAW_BUFF_SIZE,
.double_buffer = 1,
.flags = {
.buff_dma = true,
.buff_dma = false,
.buff_spiram = false,
.sw_rotate = false,
.sw_rotate = true
}
};
ESP_LOGE(TAG,"On demarre le display");
@ -178,7 +195,7 @@ void init_display(){
//bsp_display_rotate(dsp,LV_DISP_ROTATION_180);
bsp_display_backlight_on();
bsp_display_brightness_set(30);
bsp_display_brightness_set(50);
mainState.display_init=true;
}
@ -196,6 +213,7 @@ static void value_changed_event_cb(lv_event_t * e)
}
void app_ota_display(){
if(display_lock("app_ota_display")){
lv_obj_clean(lv_scr_act());
lv_obj_t * label = lv_label_create(lv_screen_active());
otaStatus=lv_label_create(lv_scr_act());
@ -211,11 +229,16 @@ void app_ota_display(){
/*Manually update the label for the first time*/
lv_obj_send_event(arcProgress, LV_EVENT_VALUE_CHANGED, NULL);
display_unlock("app_ota_display");
}
}
void setOTAProgress(int value){
if(display_lock("setOTAProgress")){
lv_arc_set_value(arcProgress, value);
lv_obj_send_event(arcProgress, LV_EVENT_VALUE_CHANGED, NULL);
display_unlock("setOTAProgress");
}
}
void app_main_display()
@ -250,7 +273,7 @@ void app_main_display()
lv_theme_t * th = lv_theme_domotic_init(lv_display_get_default());
lv_display_set_theme(lv_disp_get_default(), th); /* Assign theme to display */
lv_subject_init_string(&dateHeureSubj, dateHeureStr, NULL, 64, "--");
//lv_subject_init_string(&dateHeureSubj, dateHeureStr, NULL, 64, "--");
lv_style_init(&no_padding);
lv_style_set_pad_all(&no_padding, 0);
@ -266,7 +289,6 @@ void app_main_display()
/*First define a color gradient. In this example we use a purple to black color map.*/
static lv_grad_dsc_t grad;
ESP_LOGE(TAG,"On aimerait %d stops", sizeof(grad_colors) / sizeof(lv_color_t));
lv_gradient_init_stops(&grad, grad_colors, NULL, NULL, sizeof(grad_colors) / sizeof(lv_color_t));
/*Make a radial gradient with the center in the middle of the object, extending to the farthest corner*/
@ -282,10 +304,10 @@ void app_main_display()
lv_obj_set_height(cont_status, LV_SIZE_CONTENT);
lv_obj_set_width(cont_status, LV_SIZE_CONTENT);
lv_obj_t *jour = lv_label_create(cont_status);
jour = lv_label_create(cont_status);
lv_obj_set_style_text_font(jour,lv_theme_get_font_normal(jour),0);
lv_obj_set_width(jour, LV_SIZE_CONTENT);
lv_label_bind_text(jour, &dateHeureSubj, NULL);
//lv_label_bind_text(jour, &dateHeureSubj, NULL);
lv_obj_refr_size(cont_status);
// lv_obj_align(jour, LV_ALIGN_CENTER,0,0);
@ -324,17 +346,17 @@ void app_main_display()
}
bool display_lock(const char* TAG){
ESP_LOGI(TAG,"Obtention mutexx");
if(bsp_display_lock(5000)){
ESP_LOGI(TAG, "Mutex obtenu");
//ESP_LOGI(TAG,"Obtention mutex");
if(bsp_display_lock(3000)){
//ESP_LOGI(TAG, "Mutex obtenu");
return true;
}else{
ESP_LOGE(TAG, "Impossible d'obtenir le mutex");
//ESP_LOGE(TAG, "Impossible d'obtenir le mutex");
return false;
}
}
void display_unlock(const char* TAG){
ESP_LOGI(TAG,"Libération mutexx");
//ESP_LOGI(TAG,"Libération mutexx");
bsp_display_unlock();
}
@ -372,7 +394,7 @@ static void weatherdata_obs_cb(lv_observer_t *observer, lv_subject_t *subject)
// Retrieve weatherdata
const struct meteodailyforecast_data *data = subject->value.pointer;
ESP_LOGE(TAG, "CB meteo jour declenché. Meteo valide : %i", data->isValid);
ESP_LOGV(TAG, "CB meteo jour declenché. Meteo valide : %i", data->isValid);
// printffd(data);
// char buff[40] = {};
// sprintf(buff,"%s %.1f %.1f", data->previsions.desc, data->previsions.min, data->previsions.max);
@ -430,7 +452,7 @@ void showMeteoIcon(const char *icon, lv_obj_t *desc_icon, int childNr)
char *str1 = "A:/littlefs/";
char *result = malloc(strlen(str1) + strlen(icon) + 6);
sprintf(result, "%s%s.png", str1, icon);
ESP_LOGE(TAG,"On affiche l'image %s", result);
ESP_LOGV(TAG,"On affiche l'image %s", result);
lv_image_set_src(img, result);
free(result);
}
@ -549,7 +571,7 @@ static lv_obj_t* weatherH_fragment_create_obj(int horaireNr, lv_obj_t *parent)
lv_obj_set_style_text_font(desc, lv_theme_get_font_normal(desc), 0);
// On positionne un observer sur le subjet correspondant a l'horaire du widget
ESP_LOGE(TAG, "on positionne obs sur horaire %d", horaireNr);
ESP_LOGV(TAG, "on positionne obs sur horaire %d", horaireNr);
lv_subject_add_observer_obj(tmpHSubj[horaireNr], weatherdataH_obs_cb, sup, NULL);
return container;
}
@ -970,10 +992,3 @@ void draw_ihm()
void log_cb(lv_log_level_t level, const char * buf){
ESP_LOGE(TAG, "%s",buf);
}
void show_temp(char * tempHumid){
display_lock("tempHumid");
lv_label_set_text(lblTempInt2, tempHumid);
display_unlock("tempHumid");
}

View File

@ -23,8 +23,6 @@ void weather_data_retreived_start();
void weather_data_retreived(meteodailyforecast_data dailyDatas[3], meteoforecast_data datas[3]);
void draw_time(char * dateHeure);
void show_temp(char * tempHumid);
void draw_tabMeteo(lv_obj_t * parent);
void tabChgEvt(lv_event_t *event);
@ -35,7 +33,10 @@ void draw_tabSettings(lv_obj_t * parent);
typedef enum eIHMEvent_t{
IHM_EVT_WIFI_STATUS,
IHM_EVT_TIME_SETTED
IHM_EVT_TIME_SETTED,
IHM_EVT_OTA_STARTED,
IHM_EVT_OTA_PROGRESS,
IHM_EVT_HUMID_TEMP
} eIHMEvent_t;
typedef struct IP_TASK_COMMANDS

View File

@ -36,6 +36,8 @@
#include "esp_timer.h"
#include <esp_task_wdt.h>
// GPIO assignment
#define AM2302_GPIO 4
@ -320,6 +322,15 @@ static esp_err_t validate_image_header(esp_app_desc_t *new_app_info)
void simple_ota_example_task(void *pvParameter)
{
ESP_LOGE(TAG,"En attente connexion wifi");
// Waiting until either the connection is established (WIFI_CONNECTED_BIT).
EventBits_t bits = xEventGroupWaitBits(domotic_event_group,
BIT0,
pdFALSE,
pdFALSE,
portMAX_DELAY);
if (bits & BIT0){
esp_err_t ota_finish_err = ESP_OK;
ESP_LOGI(TAG, "Starting OTA example task");
#ifdef CONFIG_EXAMPLE_FIRMWARE_UPGRADE_BIND_IF
@ -335,8 +346,8 @@ void simple_ota_example_task(void *pvParameter)
esp_http_client_config_t config = {
.url = "https://192.168.0.28:8070/rgb_lcd.bin",
.timeout_ms = 30000,
.buffer_size = 6144,
.buffer_size_tx = 6144, //TX Buffer, Main Buffer
.buffer_size = 20000,
.buffer_size_tx = 20000, //TX Buffer, Main Buffer
.event_handler = _ota_http_event_handler,
.keep_alive_enable = true,
.cert_pem = (char *)server_cert_pem_start,
@ -364,6 +375,7 @@ void simple_ota_example_task(void *pvParameter)
#endif
esp_https_ota_config_t ota_config = {
.http_config = &config,
.buffer_caps = MALLOC_CAP_INTERNAL
};
ESP_LOGI(TAG, "Attempting to download update from %s", config.url);
esp_https_ota_handle_t https_ota_handle = NULL;
@ -384,10 +396,19 @@ void simple_ota_example_task(void *pvParameter)
ESP_LOGE(TAG, "image header verification failed");
goto ota_end;
}
if(bsp_display_lock(100)){
app_ota_display();
bsp_display_unlock();
}
xIPStackEvent_t m = {
.eEventType = IHM_EVT_OTA_STARTED,
.pvData = NULL
};
xQueueSendToBack(ihm_queue,&m,5);
esp_task_wdt_config_t cfgWdt = {
.idle_core_mask = 0,
.timeout_ms=15000,
.trigger_panic=false
};
esp_task_wdt_reconfigure(&cfgWdt);
while (1) {
err = esp_https_ota_perform(https_ota_handle);
if (err != ESP_ERR_HTTPS_OTA_IN_PROGRESS) {
@ -399,10 +420,10 @@ void simple_ota_example_task(void *pvParameter)
//ESP_LOGE(TAG,"Image size : %i", esp_https_ota_get_image_size(https_ota_handle));
int percent=esp_https_ota_get_image_len_read(https_ota_handle)*100/esp_https_ota_get_image_size(https_ota_handle);
//ESP_LOGE(TAG, "Image bytes read: %d %i%%", esp_https_ota_get_image_len_read(https_ota_handle),percent);
if(bsp_display_lock(100)){
setOTAProgress(percent);
bsp_display_unlock();
}
m.eEventType=IHM_EVT_OTA_PROGRESS;
m.pvData=(void*)percent;
xQueueSendToBack(ihm_queue,&m,5);
vTaskDelay(10/portTICK_PERIOD_MS);
}
if (esp_https_ota_is_complete_data_received(https_ota_handle) != true) {
// the OTA image was not completely received and user can customise the response to this situation.
@ -421,12 +442,12 @@ void simple_ota_example_task(void *pvParameter)
vTaskDelete(NULL);
}
}
ota_end:
esp_https_ota_abort(https_ota_handle);
ESP_LOGE(TAG, "ESP_HTTPS_OTA upgrade failed");
vTaskDelete(NULL);
}
}
am2302_handle_t sensor = NULL;
@ -440,7 +461,11 @@ void readTempHumid(void *pvParameter)
char buff[40];
ESP_LOGI(TAG, "Temperature: %.1f °C, Humidity: %.1f %%", temperature, humidity);
sprintf(buff,"%.1f °C, %.1f %%", temperature, humidity);
show_temp(buff);
xIPStackEvent_t m = {
.eEventType = IHM_EVT_HUMID_TEMP,
.pvData = buff
};
xQueueSendToFront(ihm_queue,&m,5);
vTaskDelay(60000 / portTICK_PERIOD_MS);
}
@ -748,7 +773,7 @@ void app_main(void)
domotic_event_group = xEventGroupCreate();
ihm_queue = xQueueCreate(10,sizeof(xIPStackEvent_t));
init_display();
//init_display();
const esp_timer_create_args_t periodic_timer_args = {
.callback = &presence_timer_callback,
/* name is optional, but may help identify the timer when debugging */
@ -823,8 +848,8 @@ void app_main(void)
ESP_LOGI(TAG, "ESP_WIFI_MODE_STA");
wifi_init_sta(wifi_cb);
start_wifi_logger();
wifi_log_e("test", "%s %d %f", "hello world wifi logger", 43, 45.341223242); // write log over wifi with log level -> ERROR
//start_wifi_logger();
//wifi_log_e("test", "%s %d %f", "hello world wifi logger", 43, 45.341223242); // write log over wifi with log level -> ERROR
esp_log_level_set("tcp_handler", ESP_LOG_NONE);
printf("8b - Free heap after buffers allocation: %d\n", xPortGetFreeHeapSize());
@ -834,7 +859,7 @@ void app_main(void)
* and hence timings for overall OTA operation.
*/
esp_wifi_set_ps(WIFI_PS_NONE);
xTaskCreate(&simple_ota_example_task, "ota_example_task", 8192, NULL, 1, NULL);
xTaskCreatePinnedToCore(&simple_ota_example_task, "ota_example_task", 8192, NULL, 1, NULL,0);
on_weather_data_retrieval(weather_data_retreived);
on_weather_data_retrieval_start(weather_data_retreived_start);
@ -864,6 +889,11 @@ void app_main(void)
lv_subject_init_int(&mqttStatus,-1);
lv_subject_add_observer_obj(&mqttStatus, mqttStatus_obs_cb, NULL, NULL);
while(!mainState.wifi_init){
vTaskDelay(pdTICKS_TO_MS(10));
}
start_webserver();
// Configuration de la sonde Temp/Humid.
am2302_config_t am2302_config = {
.gpio_num = AM2302_GPIO,

View File

@ -62,7 +62,7 @@ void updateTime(void *pvParameter)
tzset();
struct tm timeinfo = {0};
localtime_r(&now, &timeinfo);
sprintf(strftime_buf, "%s %d %s %02d:%02d", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min);
sprintf(strftime_buf, "%s %d %s %02d:%02d (%lli mn depuis reboot)", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min, (esp_timer_get_time()/1000/1000/60));
send_event(EVT_TIME_SETTED,&strftime_buf);
vTaskDelay(60000 / portTICK_PERIOD_MS);
}