M5StackのMicroPythonで漢字表示のテスト


forester3さんに、MicroPythonでフレームバッファに日本語を表示するライブラリを頂いたので、放置気味だったM5Stackで試してみました。

ライブラリはこちらです。

micropython-samples/fontx2.py at master · forester3/micropython-samples

利用できるフォントはFONTX2形式、出力できる文字コードはシフトJISです。
今回は、フォントは美咲フォントを使わせていただきました。

8×8 ドット日本語フォント「美咲フォント」

フォントデータはMicroPythonのストレージに置いておき、ライブラリから都度読み込みます。

具体的な手順としては、以下のようになります。

(1)美咲フォントのFONTX2形式のデータをダウンロード
(2)4X8.FNTとMISAKI.FNTの二つのファイルを、rshellなどのツールでM5Stackへコピー
(3)上記のfontx2.pyをロード(もしくは、pasteモードで貼り付ける)
(4)表示したいシフトJISのデータを用意(以下の例では、”kanji.txt”というテキストファイルとします)
(5)以下のようにフォントデータとM5StackのLCDを指定してFontX2オブジェクトを作成

misaki = FontX2("4X8.FNT", "MISAKI.FNT", lcd)

(6)以下のようにしてデータを表示

misaki.text_sjis(open('kanji.txt', 'b').read(), 100, 100, 0xffffff)

パラメータは文字列、x, y, カラーです。

M5Stack+MicroPythonの組み合わせはネット接続が簡単にできるので、UTF-8からシフトJISへの変換だけ何とかなれば、ネット上のテキストデータを簡単にM5Stackの画面に表示できそうです。

コメント