uint8_t MD_MAX72XX::getChar(uint8_t c, uint8_t size, uint8_t *buf)
{
PRINT("\ngetChar: '", (char)c);
PRINT("' ASC ", c);
PRINT(" - bufsize ", size);
if (buf == nullptr)
return(0);
int16_t offset = getFontCharOffset(c);
if (offset == -1)
{
memset(buf, 0, size);
size = 0;
}
else
{
size = min(size, pgm_read_byte(_fontData+offset));
offset++; // skip the size byte
for (uint8_t i=0; i<size; i++)
*buf++ = pgm_read_byte(_fontData+offset+i);
}
return(size);
}