Everything is optional
The µGFX library is split into different modules. There's one module to drive a display, one to handle a touchscreen, another module to read from SD-Cards and so on. Each module can individually be enabled and disabled. Disabled modules don’t get compiled into the finished binary so the library will only be as big as the features you need. µGFX is always the right library to get the job done, no matter whether you just want basic drawing capabilities, advanced text rendering or a fully featured GUI toolkit.
Display
Monochrome displays
Touchscreen
Resistive touchscreens
GUI
Window manager
Display
Grayscale displays
Text rendering
Anti-Aliasing
GUI
Widget styles
Display
Color displays
File-Systems
FATFS to retrieve files from any FAT formatted device
Text rendering
Kerning
Display
Any resolution
Image rendering
BMP
GUI
All widgets are completely customizable
Text rendering
Use any font you want
Touchscreen
with/without dedicated touch controller
Image rendering
GIF
GUI
buttons, checkboxes, sliders, lists, tabs, graphs, text edits and many more
Touchscreen
Best touch analysis and reliability
Display
Support for hardware acceleration
Text rendering
Online & offline font converter
GUI
custom drawing routine to provide whatever look and feel you want
Image rendering
PNG
Display
Framebuffers are optional
Touchscreen
Interface to store and reload calibration
File-Systems
ROMFS to retrieve files from FLASH
Audio
Support for hardware codecs
Touchscreen
Calibration verification
Image rendering
Transparency / Alpha
Display
Support for multiple displays
File-Systems
NATIVEFS to retrieve files from your operating system
Audio
Volume mixer
Image rendering
Animated, multi-frame images
Display
Support for remote displays
Text rendering
Unicode support
Audio
Audio input
Touchscreen
three-point calibration algorithm
Touchscreen
Physical pointing devices
Image rendering
Image caching
Display
Fully multi-threading re-entrant.
Audio
Audio output
Touchscreen