| 
    FastArduino v1.10
    
   C++ library to build fast but small Arduino/AVR projects 
   | 
 
Generic font support class. More...
#include <fastarduino/devices/font.h>
Public Member Functions | |
| constexpr | Font (char first_char, char last_char, uint8_t width, uint8_t height, const uint8_t *glyphs) | 
| Construct a new Font.  More... | |
| uint8_t | width () const | 
| Width of font glyphs in pixels.  More... | |
| uint8_t | height () const | 
| Height of font glyphs in pixels.  More... | |
| uint8_t | first_char () const | 
| Code of first char supported by this Font.  More... | |
| uint8_t | last_char () const | 
| Code of last char supported by this Font.  More... | |
| uint8_t | glyph_rows () const | 
| Determine the number of rows this font uses for each of its glyphs.  More... | |
| uint8_t | glyph_cols () const | 
| Determine the number of columns this font uses for each of its glyphs.  More... | |
| uint8_t | glyph_size () const | 
| Glyph size in bytes.  More... | |
| uint16_t | get_char_glyph_ref (char value) const | 
Get a glyph reference for the requested character value.  More... | |
| uint8_t | get_char_glyph_byte (uint16_t glyph_ref, uint8_t index) const | 
| Get one byte of character glyph.  More... | |
Static Public Attributes | |
| static constexpr bool | VERTICAL = VERTICAL_ | 
true if font is vertical, false if horizontal  More... | |
Generic font support class.
Font glyphs are either stored horizontally (1 byte represents a row) or vertically (1 byte represents a columns). Direction selection is based on display devices internal raster organisation and is thus used for optimization purposes.
| VERTICAL_ | true if font is vertical, false if horizontal  | 
      
  | 
  inlineconstexpr | 
Construct a new Font.
| first_char | code of first character mapped to a glyph | 
| last_char | code of last character mapped to a glyph | 
| width | width of a glyph in pixels | 
| height | height of a glyph in pixels | 
| glyphs | pointer to an array of bytes containing all glyphs from first_char and last_char; this array must be stored in MCU flash memory.  | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Determine the number of rows this font uses for each of its glyphs.
Result depends on:
For a vertical font, one row is already composed of 8 pixels, hence the result will be 1 for fonts which height is 8 or less. For a horizontal font, the result will be exactly the font height.
      
  | 
  inline | 
Determine the number of columns this font uses for each of its glyphs.
Result depends on:
For a vertical font, one column is one pixel, hence the result will be exactly the font width. For a horizontal font, one column is 8 pixels (one byte), hence the result will be 1 for fonts which width is 8 or less.
      
  | 
  inline | 
      
  | 
  inline | 
Get a glyph reference for the requested character value. 
the char glyph ref object
| value | character code to retrieve the glyph for | 
get_char_glyph_byte(); 0 if no glyph exists for value.
      
  | 
  inline | 
Get one byte of character glyph.
| glyph_ref | unique glyph referenced as returned by get_char_glyph_ref()  | 
| index | byte index to retrieve, from 0 to glyph_size()  | 
VERTICAL) for glyph_ref 
      
  | 
  staticconstexpr |