読者です 読者をやめる 読者になる 読者になる

あっきぃ日誌

鉄道ブログのような技術系ブログのようななにか

白黒のドット絵を01に変換するやつ(Python)

OSASKとかOSAkkieの時はこういうの朝飯前だったような気がしたのですが、気がついたらどうやってやんだっけって感じでビビりました。たしか前はHSPでドットを見ていた気がするし、CでBMPを解析していたような気もします。もう曖昧だ。

というわけで、今回はPythonで書いてみました。白黒のgifを用意して、パレットの01を判定します。

画像はこれ。

f:id:Akkiesoft:20140225010618g:plain

Pythonスクリプトはこんな感じ。シンプルながら何の工夫もない。できればいいや。

from PIL import Image
import sys

write = sys.stdout.write

im = Image.open("uiiin-dot84x19-2.gif")

x = 0
y = 0
while y < height:
  while x < width:
    a = 1 - im.getpixel((x,y))
    write(str(a))
    x += 1
  x = 0
  write("\n")
  y += 1

print "OK."

結果。

000000000000000000100000000000000000000000111000000000000000000000000000010000000000
000000000000000001010000000000000000000001101110000000000000000000000000101000000000
000000000000000001010000000000000000000011000010000000000000000000000000101000000000
000000001100000001010000000000001110000010000011000000011100011000000000101000000000
000000001000000001010000000000011111000110000001000000111110001000000000101000000000
000000011000000001111100000000110111001111111111110001101110001100000000111110000000
000000010000000010001010000000100110000100000001000001001100000100000001000101000000
000000110000000010101011000000000000000100000001000000000000000110000001010101100000
000000110000000010110101000000000000000100000011000000000000000110000001011010100000
000000110000000100011011000000000000000111111110000000000000000110000010001101100000
000000110000000010010110000000000000000010001100000000000000000110000001001011000000
000000110000000010010010000000000000000010000110000000000000000110000001001001000000
000000110000000001000100000000000000000011000010000000000000000110000000100010000000
000000110000000001111100000000000000000001110110000000000000000110000000111110000000
000000010000000010000010000000000000000000011100000000000000000100000001000001000000
000000011000000001111100000000000000000000000000000000000000001100000000111110000000
000000001000000000000000000000000000000001111110000000000000001000000000000000000000
000000001100000000000000000000000000000000000000000000000000011000000000000000000000
000000000000000000000000000000000000000001111110000000000000000000000000000000000000

いや、最終的にはこれを16進数にまとめたやつがほしいんですけどね。何に使うかというと、こないだのNokia5110にデータとして表示させたいなと。なので、もうちょい書かないとダメです。