Frame buffer antialiasing option
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
Wasted Memory?
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.