福野泰介の一日一創 - create every day

IchigoJamで格安電光掲示板 - 日本語10x10 M+ BITMAP FONTSを8x8にコンバート

2018/02/08
#IchigoJam #opendata #maker 

フリーフォントを使ったコンバート、探しても8x8フルサイズのフリーフォントは見つからず。代わりに10x10のフリービットマップフォント M+ BITMAP FONTS を8x8に変換する形で実現。
機械的な変換なので、フォントの精度はいまいちながら、一応読めました。

M+ BITMAP FONTS のデータをJavaScriptで読めるように変換し、JISコードからフォントパターンを読み出して、IchigoJam BASICのプログラムに変換します。

makejpfont8x8 - IchigoJamで日本語漢字表示
* 8x8のフォントが微妙なのは機械変換だからです!みんなでつくる8x8フォントプロジェクトもいいかも

生成したプログラムは、PCGを使ってフォントパターンを書き込みます。
32x8 WS2812Bを使った電光掲示板にするプログラムはこちら!

'font 100 POKE#700,95,64,239,41,63,83,223,127,34,34,255,34,34,255,34,66,63,161,191,161,161,255,8,201,8,255,137,149,163,193,129,129,0,0,0,0,0,0,0,96,17,253,32,66,66,142,147,31,37,250,32,47,64,68,72,143,32,38 110 POKE#73A,233,49,33,98,162,35,130,64,31,130,66,15,34,223,8,255,18,255,33,63,4,223,39,253,36,255,85,251,35,255,0,0,0,0,0,0,0,96,127,8,255,171,127,1,127,127,16,17,249,37,37,37,68,92,11,124,5,254,4,58 120 POKE#776,70,124,66,66,159,130,130,142,147,95,32,63,64,191,0,127,69,255,8,127,16,25,38,74,18,31,0,28,226,1,1,1,6,56,66,66,159,130,130,130,130,92,0,31,228,8,16,16,16,14,8,8,8,8,8,0,0,8 130 L=22:LRUN1 SAVE1 'main 10 POKE#800,240,181,114,182,9,36,36,2,9,25,1,36,164,70,27,76,11,120,91,9,0,240,31,248,11,120,155,8,7,34,19,64,0,240,25,248,11,120,3,34,19,64,91,0,0,240,19,248,97,68,1,48,31,34,16,66,234,209,66,9 20 POKE#83C,8,42,8,208,31,49,1,35,93,66,172,70,26,66,225,209,2,49,156,70,222,231,98,182,240,189,128,37,155,0,255,34,34,96,3,39,9,38,43,66,1,208,9,39,3,38,1,63,253,209,0,34,34,96,1,62,253,209,109,8 30 POKE#878,239,209,112,71,4,0,1,80 40 CLS:L=22:P=0:C=RND(256) 50 A=224+P/9:FORI=0TO7:N=PEEK(A*8+I):POKE#900+31+I*32,N>>(7-P%9)&1*C:NEXT 60 U=USR(#800,0) 70 SCROLL LEFT:P=P+1:P=P%(L*9):IF !P C=RND(256) 80 GOTO 50 SAVE0 LRUN0

Lが文字の長さ(最大32文字)、8x8描画後1ライン空けるのがポイントです(/9、*9、%9)


IchigoJam web 上でも画面上だけで動かせます。


大雪のため、福井県内物流に混乱あり。残った雪が解けてなだれなどが起きやすいので注意!

数万円でできる格安IoT電光掲示板で、街中でリアルタイムな情報発信できる災害に強いまち!?

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image