From e06500cd5851764daf65fec7092e682d27946ece Mon Sep 17 00:00:00 2001 From: Stephan Hadinger Date: Thu, 24 Mar 2022 13:00:08 +0100 Subject: [PATCH] LVGL roboto tapp improved --- .../roboto/robotocondensed_latin1.be | 30 ++++++++++++++++-- .../roboto/robotocondensed_latin1.sh | 6 ++++ .../roboto/robotocondensed_latin1.tapp | Bin 52892 -> 61585 bytes 3 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.sh diff --git a/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.be b/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.be index 713340c60..1381e80e5 100644 --- a/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.be +++ b/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.be @@ -6,9 +6,35 @@ font_robotocondensed_latin1.init = def (m) import lv var wd = tasmota.wd # save current working dir - lv.font_robotocondensed_latin1 = def (size) - return lv.load_font("A:" + wd + "robotocondensed_latin1_" + str(size) + ".bin") + class robotocondensed_latin1_loader + var wd + var font_cache + def init(wd) + self.wd = wd + self.font_cache = {} + end + + def load_robotocondensed_latin1(sz) + sz = int(sz) + var font + # is the font already embedded? + try + font = lv.font_embedded("robotocondensed", sz) + except .. + end + if (font) return font end + # is the font in our local cache? + font = self.font_cache.find(sz) + if (font) return font end + # load the font from the archive + font = lv.load_font("A:" + wd + "robotocondensed_latin1_" + str(sz) + ".bin") + self.font_cache[sz] = font + return font + end end + + var monad = robotocondensed_latin1_loader(wd) + lv.font_robotocondensed_latin1 = / sz -> monad.load_robotocondensed_latin1(sz) end return font_robotocondensed_latin1 diff --git a/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.sh b/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.sh new file mode 100644 index 000000000..e3573f14a --- /dev/null +++ b/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -x #echo on + +rm robotocondensed_latin1.tapp +zip -j -0 robotocondensed_latin1.zip autoexec.be robotocondensed_latin1.be robotocondensed_latin1_12.bin robotocondensed_latin1_14.bin robotocondensed_latin1_16.bin robotocondensed_latin1_24.bin robotocondensed_latin1_32.bin +mv robotocondensed_latin1.zip robotocondensed_latin1.tapp diff --git a/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.tapp b/lib/libesp32_lvgl/LVGL_assets/roboto/robotocondensed_latin1.tapp index bf714bc6e79e2ed0c8e0e45c6aa5dc9e37b89af4..e4c8ca84ceeb371d83f63d49a0ae2d1f47679b1e 100644 GIT binary patch delta 8984 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 delta 676 zcmbREka^BrX1)M#W)?065cr!mJ9r|Wg3!5@Clf)qw1S&~ktK5fBAtm2<$^8+vxB`o z&h58iVqgGa$;lsBC8hL|QbR*H8JPWdo=gk?VkAAke@$M?Dkq^}tB{hKrl3)rS(U2E zr2qs)sU@XFd6T(WtVKX#3fc-vdP$jiN+8+Pyp+kJtf%<6LuLi9`oFvOi39_~6N$<4 zc5;)s*|>z3nw>}lVT3iC)!9BvuqXnRPZqT^5;_Nz1Yslvk#^F`EV>{C6^TYdPl1xp zP!;S+JZ;8e2~yBK!${~aP!fcZOgKM7GL!`rI+NeL)zd`{8Ws^?$OU*aGRZMRLJ>8b zCcD2gQU(PM!Z-{aAiqwY^G=G%ih1(G_mW