raspberry pi pico の framebuf にテキストを90度回転して出力する方法
現状framebuf のtextメソッドでは文字の出力向きを変える手段がない このため、misakifontを使用し出力時に向きを変えることとした。
美咲フォントのインストールについては以下のサイトを参考にしてインストールしました。 Pi Pico (W)で有機ELディスプレイに日本語表示(メモ)
90度回転出力ソース(ソース中epdはframebuf.FrameBufferを継承したが煩雑になるので割愛)
import framebuf from misakifont import MisakiFont # Display resolution EPD_WIDTH = 128 EPD_HEIGHT = 296 mf = MisakiFont() # framebuf.FrameBufferを継承しepdを作成(ソース割愛) def show_text_v(str, x, y, color, size): y -= 2 # 書き出しを少しずらす for c in str: fd = mf.font(ord(c)) if y <= 8 * size: y = EPD_HEIGHT - 2 x += 8 * size if x >= EPD_WIDTH: y = 0 for row in range(0, 7): for col in range(0, 7): if (0x80 >> col) & fd[row]: epd.rect(int(x + row * size), int(y - col * size), size, size, color) y -= 8 * size year_str = "2023年" show_text_v( year_str, 10, 274 , 0x00 , 1)
- 90度反転出力を使用した作品例