branches/kale/src/build/png2bdc.py
| r243929 | r243930 | |
| 116 | 116 | CACHED_CHAR_SIZE = 12 |
| 117 | 117 | CACHED_HEADER_SIZE = 16 |
| 118 | 118 | |
| 119 | | try: |
| 119 | #try: |
| 120 | if 0 == 0: |
| 120 | 121 | fp.write('f') |
| 121 | 122 | fp.write('o') |
| 122 | 123 | fp.write('n') |
| 123 | 124 | fp.write('t') |
| 124 | | fp.write(bytearray([hash32 >> 24 & 0xff])) |
| 125 | | fp.write(bytearray([hash32 >> 16 & 0xff])) |
| 126 | | fp.write(bytearray([hash32 >> 8 & 0xff])) |
| 127 | | fp.write(bytearray([hash32 >> 0 & 0xff])) |
| 128 | | fp.write(bytearray([font.height >> 8 & 0xff])) |
| 129 | | fp.write(bytearray([font.height >> 0 & 0xff])) |
| 130 | | fp.write(bytearray([font.yOffs >> 8 & 0xff])) |
| 131 | | fp.write(bytearray([font.yOffs >> 0 & 0xff])) |
| 132 | | fp.write(bytearray([numChars >> 24 & 0xff])) |
| 133 | | fp.write(bytearray([numChars >> 16 & 0xff])) |
| 134 | | fp.write(bytearray([numChars >> 8 & 0xff])) |
| 135 | | fp.write(bytearray([numChars >> 0 & 0xff])) |
| 125 | fp.write(chr(hash32 >> 24 & 0xff)) |
| 126 | fp.write(chr(hash32 >> 16 & 0xff)) |
| 127 | fp.write(chr(hash32 >> 8 & 0xff)) |
| 128 | fp.write(chr(hash32 >> 0 & 0xff)) |
| 129 | fp.write(chr(font.height >> 8 & 0xff)) |
| 130 | fp.write(chr(font.height >> 0 & 0xff)) |
| 131 | fp.write(chr(font.yOffs >> 8 & 0xff)) |
| 132 | fp.write(chr(font.yOffs >> 0 & 0xff)) |
| 133 | fp.write(chr(numChars >> 24 & 0xff)) |
| 134 | fp.write(chr(numChars >> 16 & 0xff)) |
| 135 | fp.write(chr(numChars >> 8 & 0xff)) |
| 136 | fp.write(chr(numChars >> 0 & 0xff)) |
| 136 | 137 | |
| 137 | 138 | # Write a blank table at first (?) |
| 138 | 139 | charTable = [0]*(numChars * CACHED_CHAR_SIZE) |
| 139 | | fp.write(bytearray(charTable)) |
| 140 | for i in range(numChars * CACHED_CHAR_SIZE): |
| 141 | fp.write(chr(charTable[i])) |
| 140 | 142 | |
| 141 | 143 | # Loop over all characters |
| 142 | 144 | tableIndex = 0 |
| r243929 | r243930 | |
| 171 | 173 | dBuffer.append(accum) |
| 172 | 174 | |
| 173 | 175 | # Write the data |
| 174 | | fp.write(bytearray(dBuffer)) |
| 176 | for j in range(len(dBuffer)): |
| 177 | fp.write(chr(dBuffer[j])) |
| 175 | 178 | |
| 176 | 179 | destIndex = tableIndex * CACHED_CHAR_SIZE |
| 177 | 180 | charTable[destIndex + 0] = i >> 8 & 0xff |
| r243929 | r243930 | |
| 190 | 193 | |
| 191 | 194 | # Seek back to the beginning and rewrite the table |
| 192 | 195 | fp.seek(CACHED_HEADER_SIZE, 0) |
| 193 | | fp.write(bytearray(charTable)) |
| 196 | for i in range(numChars * CACHED_CHAR_SIZE): |
| 197 | fp.write(chr(charTable[i])) |
| 194 | 198 | |
| 195 | 199 | fp.close() |
| 196 | 200 | return 0 |
| 197 | 201 | |
| 198 | | except: |
| 202 | #except: |
| 199 | 203 | return 1 |
| 200 | 204 | |
| 201 | 205 | |