--- /dev/null
+import Image,struct
+img = Image.open('blu.tiff')
+
+class CharData(object):
+ def __init__(self, data):
+ if data is None:
+ self.data = [ [] for y in range(7) ]
+ else:
+ self.data = data
+
+ def concat( self, other ):
+ for y in range(7):
+ self.data[y] += other.data[y]
+
+ def get_bindata(self):
+ ll = len(self.data[0])
+ ret=''
+ for y in reversed(range(7)):
+ for x in self.data[y]:
+ ret += struct.pack('BBBB',*x)
+ return ret
+
+
+ def save_as(self, name):
+ height = 7
+ width = len(self.data[0])
+ outimg = Image.frombuffer( "RGBA", (width, height),
+ self.get_bindata())
+ outimg.save(name)
+
+
+def char_at(char_x,char_y):
+ """
+ char_x specifies, zero based, the x position of the character
+ """
+ start_x = 1+char_x+ 14*char_x+2
+ start_y = 1+char_y*22+1
+ print "Starting at %i,%i" %( start_x,start_y)
+ return CharData([[ img.getpixel( (start_x+2*x,start_y+2*y) ) for x in range(5)] for y in range(7)])
+
+
+chardata = CharData(None)
+for x in range(16): #0x00 - 0x0F
+ chardata.concat( char_at(0,x) )
+for x in range(16): #0x10 - 0x1F
+ chardata.concat( char_at(0,x) )
+for x in range(16): #0x20 - 0x2F
+ chardata.concat( char_at(1,x) )
+for x in range(16): #0x30 - 0x3F
+ chardata.concat( char_at(2,x) )
+for x in range(16): #0x40 - 0x4F
+ chardata.concat( char_at(3,x) )
+for x in range(16): #0x50 - 0x5F
+ chardata.concat( char_at(4,x) )
+for x in range(16): #0x60 - 0x6F
+ chardata.concat( char_at(5,x) )
+for x in range(16): #0x70 - 0x7F
+ chardata.concat( char_at(6,x) )
+for x in range(16): #0x80 - 0x8F
+ chardata.concat( char_at(0,x) )
+for x in range(16): #0x90 - 0x9F
+ chardata.concat( char_at(0,x) )
+for x in range(16): #0xA0 - 0xAF
+ chardata.concat( char_at(7,x) )
+for x in range(16): #0xB0 - 0xBF
+ chardata.concat( char_at(8,x) )
+for x in range(16): #0xC0 - 0xCF
+ chardata.concat( char_at(9,x) )
+for x in range(16): #0xD0 - 0xDF
+ chardata.concat( char_at(10,x) )
+for x in range(16): #0xE0 - 0xEF
+ chardata.concat( char_at(11,x) )
+for x in range(16): #0xF0 - 0xFF
+ chardata.concat( char_at(12,x) )
+print chardata.save_as('7x5font.tiff')