Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- IMAGE_W = 128
- TILE_W = 8
- TILE_H = 16
- with open('sfontorig.bmp','rb') as f:
- header = f.read(0x436)
- filedata = bytearray(f.read())
- def find_leftmost(ROW, COL):
- leftmost = 7
- for TILE_ROW in range(16):
- pos = IMAGE_W * 97 + ROW * IMAGE_W * TILE_H + TILE_ROW * IMAGE_W + \
- COL * TILE_W
- for col in range(leftmost+1):
- if filedata[pos+col] != 0:
- break
- if col < leftmost:
- leftmost = col
- return leftmost
- def shift_left(left_shift, ROW, COL):
- global filedata
- for TILE_ROW in range(16):
- pos = IMAGE_W * 97 + ROW * IMAGE_W * TILE_H + TILE_ROW * IMAGE_W + \
- COL * TILE_W
- filedata[pos:pos+8] = filedata[pos + left_shift:pos + 8] + \
- b'\x00' * left_shift
- for y in range(6):
- for x in range(16):
- leftmost = find_leftmost(y, x)
- if leftmost != 0:
- shift_left(leftmost, y, x)
- with open('sfont.bmp', 'wb') as f:
- f.write(header)
- f.write(filedata)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement