← index #16755Issue #6977
Related · high · value 0.504
QUERY · ISSUE

Frame buffer antialiasing option

openby ajTronicopened 2025-02-14updated 2025-02-21
enhancement

Description

MicroPython has a built-in framebuf class. It supports drawing multiple primitives such as Ellipses. I noticed that none of these primitives have antialiasing. This results in jagged edges.

It would be extremely useful to have a way to enable antialiasing. Am I missing something? Or are most microcontrollers too slow for antialiasing?

Thank you.

Code Size

Not sure

Implementation

I hope the MicroPython maintainers or community will implement this feature

Code of Conduct

Yes, I agree

CANDIDATE · ISSUE

Wasted Memory?

closedby kdschlosseropened 2021-03-02updated 2024-08-18
port-esp32

I am going to be using an ESP32 and the program I am running on it is going to produce some memory challenges for me. I have a need for using the framebuf and from looking at the code there is 1016 bytes of ram that gets consumed for something that may not get used. The memory gets used by the "built in" font, the array that holds the font has 127 elements and each of those elements uses 8 bytes of data. that's a total of 1016 Not everyone that uses the framebuf class uses the font but they have to take a 1016 byte memory hit. There is no way to turn on or off the loading of this array not even with a preprocessor macro. It would be nice if there was a way to do this without the need to compile the firmware. 1K of memory is a pretty sizeable amount when dealing with the low availability of memory on some of these micro controllers. it would also be beneficial to have the array declared inside of the framebuf_text function. This would allow the memory to get reclaimed during a GC once the function has finished running.

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied