E-Ink

isInit()

機能です:

E-INK画面駆動の初期化

原型関数です:

bool isInit()

clear()

機能です:

墨水画面上のすべての表示内容をクリア

原型関数です:

int clear(int mode = INK_CLENR_MODE0)

使用例です:

#include "M5CoreInk.h"

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
}

Sprite

E-Ink画面操作関数を使用する前に、インスタンスを作成し、画面駆動のアドレスを渡す必要があります。初期化には、を呼び出し、を実行する必要があります。

creatSprite

機能です:

画像領域を作成し、画像データのバッファを画面駆動から取得するかどうかを設定(デフォルトはtrueで保存)

原型関数です:

int creatSprite(uint16_t posX, uint16_t posY, uint16_t width = 200, uint16_t height = 200, bool copyFromMem = true);

画像領域の座標は8の整数倍でなければなりません(例:0, 8, 16...)。そうでないと表示が異常になる可能性があります。

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  //creat ink refresh Sprite
  if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
    Serial.printf("Ink Sprite creat faild");
  }else{
    Serial.printf("creatSprite success\n");
  }
}

pushSprite

機能です:

編集した画像データを画像領域にプッシュ

原型関数です:

int pushSprite()

描画API操作後、Pushを呼び出して画面をリフレッシュする必要があります。そうでないと表示されません

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  //creat ink refresh Sprite
  if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
    Serial.printf("Ink Sprite creat faild");
  }else{
    Serial.printf("creatSprite success\n");
    InkPageSprite.drawString(35,50,"creatSprite success");
    InkPageSprite.pushSprite();
  }
}

drawPix

機能です:

(x,y)の位置に単一のピクセル点を描画

原型関数です:

void drawPix(uint16_t posX,uint16_t posY,uint8_t pixBit)

pixBitに0を渡すと黒色、1を渡すと白色になります。

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  InkPageSprite.drawPix(100,100,0);
  InkPageSprite.pushSprite();
  }

drawChar

機能です:

(x,y)の位置に単一の文字を描画

原型関数です:

void drawChar(uint16_t posX, uint16_t posY, char charData, Ink_eSPI_font_t* fontPtr)

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  //creat ink refresh Sprite
  InkPageSprite.creatSprite(0,0,200,200,true);
  Serial.printf("Ink Sprite creat faild");
  InkPageSprite.drawChar(35,50,'M');
  InkPageSprite.pushSprite();
}

drawString

機能です:

(x,y)の位置に文字列を描画

原型関数です:

void drawString(uint16_t posX, uint16_t posY, const char* charData, Ink_eSPI_font_t* fontPtr = &AsciiFont8x16)

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  //creat ink refresh Sprite
  InkPageSprite.creatSprite(0,0,200,200,true);
  InkPageSprite.drawString(35,50,"Hello E-INK");
  InkPageSprite.pushSprite();
}

FillRect

機能です:

(x,y)の位置に幅width、高さheightの矩形を描画

原型関数です:

void FillRect(uint16_t posX, uint16_t posY, uint16_t width, uint16_t height, uint8_t pixBit)

pixBitに0を渡すと黒色、1を渡すと白色になります。

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  InkPageSprite.FillRect(0,0,100,100,0);
  InkPageSprite.pushSprite();
}

drawFullBuff

機能です:

全ページを描画するには、完全なページバッファを渡す必要があります。

原型関数です:

void drawFullBuff(uint8_t* buff, bool bitMode = true)

void drawBuff(uint16_t posX,uint16_t posY,uint16_t width,uint16_t height,uint8_t* imageDataptr)

clear

機能です:

画像領域の内容をクリア

原型関数です:

void clear(int cleanFlag = CLEAR_DRAWBUFF)

cleanFlag 值 功能
CLEAR_DRAWBUFF CLEAR_DRAWBUFF まだPushされていない画像データをクリア
CLEAR_LASTBUFF CLEAR_LASTBUFF 前回リフレッシュした画像データのキャッシュ領域をクリア。次回Push時は画面を完全にリフレッシュします。

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  InkPageSprite.FillRect(0,0,100,100,0);
  InkPageSprite.pushSprite();
  delay(2000);
  InkPageSprite.clear();
  InkPageSprite.pushSprite();
}

deleteSprite

機能です:

既に作成した画像領域を解放

原型関数です:

int deleteSprite()

使用例です:

#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
    Serial.printf("Ink Sprite creat faild");
  }else{
    Serial.printf("creat Sprite success\n");
  }
  if(InkPageSprite.deleteSprite()!= 0){
    Serial.printf("Sprite delete faild");
  }else{
    Serial.printf("delete Sprite success\n");
  }
}

getSpritePtr

機能です:

画像バッファのデータを取得

原型関数です:

uint8_t* getSpritePtr(){ return _spriteBuff;}

width

機能です:

画像の幅を取得

原型関数です:

uint16_t width()

#include "M5CoreInk.h"

Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  Serial.printf("width:%d",InkPageSprite.width());
}

height

機能です:

画像の高さを取得

原型関数です:

uint16_t height()

#include "M5CoreInk.h"

Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  Serial.printf("height:%d",InkPageSprite.height());
}

posX

機能です:

画像のX座標を取得

原型関数です:

uint16_t posX()

#include "M5CoreInk.h"

Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  Serial.printf("posX:%d",InkPageSprite.posX());
}

posY

機能です:

画像のY座標を取得

原型関数です:

uint16_t posY()

#include "M5CoreInk.h"

Ink_Sprite InkPageSprite(&M5.M5Ink);

void setup() {
  M5.begin();
  M5.M5Ink.isInit();
  M5.M5Ink.clear();
  delay(1000);
  InkPageSprite.creatSprite(0,0,200,200,true);
  Serial.printf("posY:%d",InkPageSprite.posY());
}
On This Page