draws bitmaps better

This commit is contained in:
2026-08-07 23:15:32 +02:00
parent 16b7355361
commit 73111be65d
2 changed files with 25 additions and 20 deletions

View File

@@ -13,24 +13,23 @@ def get_bytestring(fname):
const uint8_t """ + bmp_name + """_data[] PROGMEM = {""", end="")
with Image.open(fname) as im:
w = im.size[0]
h = im.size[1]
w, h = im.size
im = im.convert('L')
pix = im.load()
for i in range(w*h // 8):
x = (i * 8) % w
y = i // (w // 8)
b = 0
if x == 0:
print("")
for bit in range(8):
if x + bit >= w: break
if y >= h: break
if pix[x + bit, y] < 127:
b += 1 << bit
print("\t", hex(b), end=", ")
row_bytes = (w + 7) // 8
for y in range(h):
print("")
for bx in range(row_bytes):
x = bx * 8
b = 0
for bit in range(8):
if x + bit >= w:
break
if pix[x + bit, y] < 127:
b += 1 << bit
print("\t", hex(b), end=", ")
print("""