02.M5PaperS3で日本語テスト
02.M5PaperS3で日本語テスト
説明
今までのLovyanGFXとほぼ同じです。違いは最初に、#include <epdiy.h> // 電子ペーパードライバー
を付け、今まで通りに書きますがこのままでは表示せず、表示させる時に
display.display(); // EPD側メモリのデータをパネルに表示
を追加します。
スケッチ
// 日本語表示テスト
#include <epdiy.h> // 電子ペーパードライバー
#include <M5GFX.h> // M5Stack用グラフィックライブラリ
static M5GFX display; // M5GFXのインスタンスを作成
uint16_t i = 1; // 表示数カウント
void SetFont() { // Font等初期化関数
display.init(); // パネルの初期化
display.startWrite(); // バッファを効率的に使用
if (display.isEPD()) { // e-Paper displayなら
display.setEpdMode(epd_mode_t::epd_fastest); // 描画速いが、低品質に設定
}
if (display.width() < display.height()) { // 幅より高さが大きければ
display.setRotation(display.getRotation() ^ 1); // 横長に回転する
}
display.fillScreen(TFT_BLACK); // 全画面黒
display.setFont(&fonts::lgfxJapanGothic_32); // 固定幅ゴシック体 8,12,16,20,24,28,32,36,40
display.setTextColor(TFT_WHITE, TFT_BLACK); // (白字,黒地)
display.setTextSize(1); // 文字サイズの倍数 1-7
display.setTextWrap(true, true); // 自動折返し(横,縦)
}
void setup() {
SetFont(); // Font等初期化関数へ
display.setCursor(0, 0); // カーソル位置
}
void loop() {
display.printf("(%d)日本語文字の固定幅ゴシック体で表示します。", i); // 文字列表示
display.display(); // EPD側メモリのデータをパネルに表示
i++; // iに1加算
delay(2000); // 2秒待つ
}
* flash memory(最大1.3MB)は、スケッチが67%使用。RAM(最大327kB)は、global変数が6%を使用、local変数で307kB使用可能。(1000byte=1kbyteで計算。パーテーションはDefaltです)