28 #ifndef _NANO_CANVAS_H_ 29 #define _NANO_CANVAS_H_ 252 __attribute__((noinline));
257 void clear() __attribute__((noinline));
263 size_t write(uint8_t c);
283 __attribute__((noinline));
400 void setFreeFont(
const uint8_t *progmemFont,
const uint8_t *secondaryFont =
nullptr)
402 (void)(secondaryFont);
464 uint8_t m_buffer[W * H * BPP / 8]{};
486 using NanoCanvasBase::NanoCanvasBase;
497 using NanoCanvasBase::NanoCanvasBase;
508 using NanoCanvasBase::NanoCanvasBase;
524 using NanoCanvasBase::NanoCanvasBase;
540 using NanoCanvasBase::NanoCanvasBase;
556 using NanoCanvasBase::NanoCanvasBase;
const NanoPoint offsetEnd() const
struct _NanoPoint NanoPoint
void drawLine(lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2)
void drawRect(lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2) __attribute__((noinline))
NanoFont * m_font
current set font to use with NanoCanvas
void drawVLine(lcdint_t x1, lcdint_t y1, lcdint_t y2)
lcdint_t m_cursorX
current X cursor position for text output
uint16_t m_bgColor
current background color
void drawBitmap8(lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap) __attribute__((noinline))
Draws 8-bit color bitmap in color buffer. Draws 8-bit color bitmap in color buffer.
void printFixed(lcdint_t xpos, lcdint_t y, const char *ch, EFontStyle style=STYLE_NORMAL) __attribute__((noinline))
NanoCanvasOps(lcdint_t w, lcdint_t h, uint8_t *bytes)
void clear() __attribute__((noinline))
void putPixel(lcdint_t x, lcdint_t y)
void fillRect(lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2) __attribute__((noinline))
void setSpacing(uint8_t spacing)
static const uint8_t BITS_PER_PIXEL
void setFixedFont(const uint8_t *progmemFont)
void setColor(uint16_t color)
uint8_t * m_buf
Canvas data.
void drawBitmap1(lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap) __attribute__((noinline))
Draws monochrome bitmap in color buffer using color, specified via setColor() method Draws monochrome...
lcdint_t m_cursorY
current Y cursor position for text output
void drawHLine(lcdint_t x1, lcdint_t y1, lcdint_t x2)
void printFixedPgm(lcdint_t xpos, lcdint_t y, const char *ch, EFontStyle style=STYLE_NORMAL)
void setOffset(lcdint_t ox, lcdint_t oy)
EFontStyle m_fontStyle
currently active font style
void setMode(uint8_t modeFlags)
Sets canvas drawing mode Sets canvas drawing mode. The set flags define transparency of output images...
void setFont(NanoFont &font)
void begin(lcdint_t w, lcdint_t h, uint8_t *bytes)
void loadFixedFont(const uint8_t *progmemFont)
uint16_t m_color
current color
const NanoRect rect() const
void setFreeFont(const uint8_t *progmemFont, const uint8_t *secondaryFont=nullptr)
void drawBitmap16(lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap) __attribute__((noinline))
Draws 16-bit color bitmap in color buffer. Draws 16-bit color bitmap in color buffer.
lcduint_t m_w
width of NanoCanvas area in pixels
void loadFreeFont(const uint8_t *progmemFont)
void setFontSpacing(uint8_t spacing)
uint8_t printChar(uint8_t c)
lcduint_t m_h
height of NanoCanvas area in pixels
void drawCircle(lcdint_t x, lcdint_t y, lcdint_t r, uint8_t options=0x0F) __attribute__((noinline))
void setBackground(uint16_t color)
uint8_t m_textMode
Flags for current NanoCanvas mode.