Comments (2)
OK, after reading a bit, compressed
and subpx
can be ditched.
TLDR;
https://docs.lvgl.io/8/overview/font.html#subpixel-rendering this looks as something pretty hardware-specific:
Subpixel rendering works only if the color channels of the pixels have a horizontal layout. That is the R, G, B channels are next each other and not above each other.
You can't rotate the screen because of this. I guess this is targeted in LVGL to speciality hardware which is developed with a certain screen in mind.
We could ditch montserrat_12_subpx
, also because this subpixel font is only available in12px size. It also requires special parameters at compile time. Imho if anyone wants to play with subpixel rendering in ESPHome, should try on a dedicated branch with custom fonts rendered.
https://docs.lvgl.io/8/overview/font.html#compress-fonts compressed fonts have a compromise:
The compression is more effective with larger fonts and higher bpp. However, it's about 30% slower to render the compressed fonts. Therefore it's recommended to compress only the largest fonts of user interface, because
- they need the most memory
- they can be compressed better
- and probably they are used less frequently then the medium sized fonts, so the performance cost is smaller.
Don't think this is appropriate for ESP's, or the platforms ESPHome targets. I thinbk montserrat_28_compressed
is the only one included (just like montserrat_12_subpx
) just to demonstrate that these featrues are doable in LVGL, but imho ESPHome doesn't need these.
from esphome.
Done
from esphome.
Related Issues (20)
- Currently active page variable or sensor HOT 5
- Lambdas for widgets states/flags HOT 1
- `lvgl.is_idle` condition, timeout required HOT 7
- LVGL sensors HOT 1
- `transform_angle`, `transform_zoom` failure
- Font kerning HOT 1
- Formatted text for widget updates HOT 1
- QR code
- Graph as image HOT 2
- VNC: host binary crashes on client disconnect
- VNC and `graphical_display_menu` don't play nicely together HOT 3
- Custom component/code integration for pages, widgets, etc. HOT 5
- Lvgl on e-paper crash (TTGO T5_V2.3_2.13) HOT 2
- Compile error in LVGL after last commit. HOT 6
- FR: `udp` sensor from multiple providers
- FR: `udp` text sensor
- FR: `udp` arbitrary data with actions and triggers
- FR: `udp` repeat messages
- Page's `skip` option to be set at runtime
- FR: `udp` multiple instances HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esphome.