R2.6.23 寝床でM5Stack読書
就寝時に、タブレットやKindleで読書しているのだけれど、Kindleでも重くなってきた。それならM5Stackで実現できないか? ニュースの見出しだけでも読んでたし。
ということで、やってみました。東雲フォントを使います。SDカードに入れたテキストデータを読み込んでページめくり表示で読む、ということにします。SDカードから読み込むには、一行ごとに読み込むことができないので(多分 でもそんな関数を作ってくれている方もいたような?)配列に一文字づつ読み込んで追加していき、読み込みが終了したところで、表示するということです。
しかしながら、最初から上手いことはいきません。下の画像のようになってしまいました。ところどころ文字化け、必要のないところにスペース! これでは実用になりませんな。原因追及の前に、実用になるスケッチを作りましょう。
ということで、スケッチの中に const char* text[] ={"..",".."}; というように、""の中に全角20文字、東雲フォントの16ポイントを使うと丁度M5Stack画面の320ドットに収まります。行間は自由に設定できますが、見やすさと文字数の関係で11行にすると、下のようになりました。一番下には、現在ページと総ページ数を表示します。ページめくりはCボタンで、短押しで次ページ長押しで前のページを表示するようにしました。
どちらの場合も、秀丸エディタで整形します。全角20文字にするにも、先頭に " 、行末に ", を付けるのも楽にできますので、完了後にコピペすれば出来上がりです。これはきちんと読めました(^^)/
本来は、SDカードに入れた読みたい文章をメニューから選んで読書、ということにしたいのですが、SDカードに入った日本語テキストを適正に読み込む手段を模索中です。なお、読み物には、M5Stack関連のTips集を考えており、就寝時のわずかな時間にも勉強しよう! という姿勢であります(^^;)