SSD1306 OLED display driver  1.8.2
This library is developed to control SSD1306/SSD1331/SSD1351/IL9163/PCD8554 RGB i2c/spi LED displays
Public Member Functions | List of all members
NanoCanvas1 Class Reference

#include <canvas.h>

Inheritance diagram for NanoCanvas1:
NanoCanvasBase< 1 > NanoCanvasOps< BPP > Print

Public Member Functions

void blt (lcdint_t x, lcdint_t y) override
 
void blt () override
 
void blt (const NanoRect &rect) override
 
- Public Member Functions inherited from NanoCanvasOps< BPP >
 NanoCanvasOps ()
 
 NanoCanvasOps (lcdint_t w, lcdint_t h, uint8_t *bytes)
 
void begin (lcdint_t w, lcdint_t h, uint8_t *bytes)
 
void setOffset (lcdint_t ox, lcdint_t oy)
 
const NanoPoint offsetEnd () const
 
const NanoRect rect () const
 
void putPixel (lcdint_t x, lcdint_t y)
 
void putPixel (const NanoPoint &p)
 
void drawVLine (lcdint_t x1, lcdint_t y1, lcdint_t y2)
 
void drawHLine (lcdint_t x1, lcdint_t y1, lcdint_t x2)
 
void drawLine (lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2)
 
void drawLine (const NanoRect &rect)
 
void drawRect (lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2)
 
void drawRect (const NanoRect &rect)
 
void fillRect (lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2)
 
void fillRect (const NanoRect &rect)
 
void drawBitmap1 (lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap)
 Draws monochrome bitmap in color buffer using color, specified via setColor() method Draws monochrome bitmap in color buffer using color, specified via setColor() method The bitmap is expected in Native ssd1306 controller format. More...
 
void drawXBitmap1 (lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap)
 Draws monochrome bitmap in color buffer using color, specified via setColor() method Draws monochrome bitmap in color buffer using color, specified via setColor() method The bitmap is expected in XBMP format. More...
 
void drawBitmap8 (lcdint_t x, lcdint_t y, lcduint_t w, lcduint_t h, const uint8_t *bitmap)
 Draws 8-bit color bitmap in color buffer. Draws 8-bit color bitmap in color buffer. More...
 
void clear ()
 
size_t write (uint8_t c) override
 
uint8_t printChar (uint8_t c)
 
void printFixed (lcdint_t xpos, lcdint_t y, const char *ch, EFontStyle style=STYLE_NORMAL)
 
void printFixedPgm (lcdint_t xpos, lcdint_t y, const char *ch, EFontStyle style=STYLE_NORMAL)
 
void setMode (uint8_t modeFlags)
 Sets canvas drawing mode Sets canvas drawing mode. The set flags define transparency of output images. More...
 
void setColor (uint16_t color)
 
- Public Member Functions inherited from Print
 Print ()
 
size_t print (const char *str)
 
size_t print (int n)
 
size_t println (const char *str)
 
size_t println (int data)
 

Additional Inherited Members

- Public Attributes inherited from NanoCanvasOps< BPP >
NanoPoint offset = { 0, 0 }
 
- Static Public Attributes inherited from NanoCanvasOps< BPP >
static const uint8_t BITS_PER_PIXEL = BPP
 
- Protected Attributes inherited from NanoCanvasOps< BPP >
lcduint_t m_w
 width of NanoCanvas area in pixels
 
lcduint_t m_h
 height of NanoCanvas area in pixels
 
lcduint_t m_p
 number of bits, used by width value: 3 equals to 8 pixels width
 
lcdint_t m_cursorX
 current X cursor position for text output
 
lcdint_t m_cursorY
 current Y cursor position for text output
 
uint8_t m_textMode
 Flags for current NanoCanvas mode.
 
EFontStyle m_fontStyle
 currently active font style
 
uint8_t * m_buf
 Canvas data.
 
uint16_t m_color
 current color for monochrome operations
 

Detailed Description

NanoCanvas1 represents objects for drawing in memory buffer NanoCanvas1 represents each pixel as single bit: 0/1 For details refer to SSD1306 datasheet

Definition at line 379 of file canvas.h.

Member Function Documentation

◆ blt() [1/3]

void NanoCanvas1::blt ( lcdint_t  x,
lcdint_t  y 
)
overridevirtual

Draws canvas on the LCD display

Parameters
x- horizontal position in pixels
y- vertical position in pixels

Implements NanoCanvasBase< 1 >.

◆ blt() [2/3]

void NanoCanvas1::blt ( )
overridevirtual

Draws canvas on the LCD display using offset values.

Implements NanoCanvasBase< 1 >.

◆ blt() [3/3]

void NanoCanvas1::blt ( const NanoRect rect)
overridevirtual

Draws only part of canvas on the LCD display. This method uses Canvas offset field as top-left point of whole canvas content. First point of specified rectangle defines the actual top-left point on the screen to be refreshed. For example, blt({{8,0},{15,7}}); will copy canvas area {8,0}-{15,7} to screen starting at {8,0} if canvas offset is {0,0}. If canvas offset is {12,3}, then canvas area {8,0}-{15,7} will be copied to screen at position {20,3}.

Parameters
rectrectagle describing part of canvas to move to display.

Implements NanoCanvasBase< 1 >.


The documentation for this class was generated from the following file: