No Description

ladyada c2c9321319 doxyplaint 6 years ago
Fonts f188d80907 Add .h extension to Tiny3x3a2pt7b font file 7 years ago
examples 054d3bae53 Appease the ESP8266 compiler 6 years ago
fontconvert 95c6ef33b0 Include FT_TRUETYPE_DRIVER_H in fontconvert.c 7 years ago
.gitignore 4de9ba8f14 doxy gitignore 7 years ago
.travis.yml 051fe67a0f add DMA support for nrf52 6 years ago
Adafruit_GFX.cpp 4a161f1e00 Merge branch 'master' of https://github.com/adafruit/Adafruit-GFX-Library 6 years ago
Adafruit_GFX.h b7e16558de Merge branch 'master' of github.com:adafruit/Adafruit-GFX-Library 6 years ago
Adafruit_SPITFT.cpp 1b91a1705f fix SAMD21 definition and turn on DMA for CPX (gizmo is big) - tested with ST7789 gizmo 6 years ago
Adafruit_SPITFT.h c2c9321319 doxyplaint 6 years ago
Adafruit_SPITFT_Macros.h 6b5e177fb1 WIP do not use yet! 6 years ago
README.md fae93b1841 fix travis link 6 years ago
gfxfont.h 5614790a99 *falls over* 7 years ago
glcdfont.c 0e92646066 Teensy T4.0 support (#232) 6 years ago
library.properties 051fe67a0f add DMA support for nrf52 6 years ago
license.txt f24ae8058a Fixed constructor() kludge - all subclass libs updated too 12 years ago

README.md

Adafruit GFX Library Build Status

This is the core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.). It needs to be paired with a hardware-specific library for each display device we carry (to handle the lower-level functions).

Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit!

Written by Limor Fried/Ladyada for Adafruit Industries. BSD license, check license.txt for more information. All text above must be included in any redistribution.

Recent Arduino IDE releases include the Library Manager for easy installation. Otherwise, to download, click the DOWNLOAD ZIP button, uncompress and rename the uncompressed folder Adafruit_GFX. Confirm that the Adafruit_GFX folder contains Adafruit_GFX.cpp and Adafruit_GFX.h. Place the Adafruit_GFX library folder your ArduinoSketchFolder/Libraries/ folder. You may need to create the Libraries subfolder if its your first library. Restart the IDE.

Useful Resources

  • Image2Code: This is a handy Java GUI utility to convert a BMP file into the array code necessary to display the image with the drawBitmap function. Check out the code at ehubin's GitHub repository: https://github.com/ehubin/Adafruit-GFX-Library/tree/master/Img2Code

  • drawXBitmap function: You can use the GIMP photo editor to save a .xbm file and use the array saved in the file to draw a bitmap with the drawXBitmap function. See the pull request here for more details: https://github.com/adafruit/Adafruit-GFX-Library/pull/31

  • 'Fonts' folder contains bitmap fonts for use with recent (1.1 and later) Adafruit_GFX. To use a font in your Arduino sketch, #include the corresponding .h file and pass address of GFXfont struct to setFont(). Pass NULL to revert to 'classic' fixed-space bitmap font.

  • 'fontconvert' folder contains a command-line tool for converting TTF fonts to Adafruit_GFX header format.


Roadmap

The PRIME DIRECTIVE is to maintain backward compatibility with existing Arduino sketches -- many are hosted elsewhere and don't track changes here, some are in print and can never be changed! This "little" library has grown organically over time and sometimes we paint ourselves into a design corner and just have to live with it or add ungainly workarounds.

Highly unlikely to merge any changes for additional or incompatible font formats (see Prime Directive above). There are already two formats and the code is quite bloaty there as it is (this also creates liabilities for tools and documentation). If you must have a more sophisticated font format, consider creating a fork with the features required for your project. For similar reasons, also unlikely to add any more bitmap formats, it's getting messy.

Please don't reformat code for the sake of reformatting code. The resulting large "visual diff" makes it impossible to untangle actual bug fixes from merely rearranged lines.