mods that hopefully work for a TechAge-based pack
No files matched your search
@@ -0,0 +1,46 @@
|
||||
#
|
||||
import os
|
||||
from PIL import Image
|
||||
import numpy as np
|
||||
os.chdir(os.path.dirname(__file__))
|
||||
|
||||
ascii_code = 0
|
||||
is_code = False
|
||||
FONT_COLOR = 0x000000FF
|
||||
BGND_COLOR = 0x00000000
|
||||
WIDTH = 7
|
||||
HEIGHT = 14
|
||||
|
||||
Data = np.zeros(WIDTH * HEIGHT * 4, dtype=np.uint8)
|
||||
|
||||
def add_row(data, index, row):
|
||||
for i in range(0, WIDTH):
|
||||
idx = ((index * WIDTH) + i) * 4
|
||||
if row & (1 << (7 - i)):
|
||||
data[idx+0] = FONT_COLOR >> 24
|
||||
data[idx+1] = FONT_COLOR >> 16
|
||||
data[idx+2] = FONT_COLOR >> 8
|
||||
data[idx+3] = FONT_COLOR >> 0
|
||||
else:
|
||||
data[idx:idx+4] = BGND_COLOR
|
||||
|
||||
for line in open('./Dina_r400-8.bdf'):
|
||||
words = line.split()
|
||||
if len(words) == 0:
|
||||
continue
|
||||
if words[0] == 'ENDCHAR':
|
||||
is_code = False
|
||||
if ascii_code >= 0x20 and ascii_code <= 0x7E:
|
||||
img = Image.frombuffer("RGBA", (WIDTH, HEIGHT), Data, "raw", "RGBA", 0, 1)
|
||||
img.save("lcdm%02X.png" % ascii_code)
|
||||
index = 0
|
||||
Data = np.zeros(WIDTH * HEIGHT * 4, dtype=np.uint8)
|
||||
elif is_code and len(words)== 1:
|
||||
add_row(Data, index, int(words[0], 16))
|
||||
index += 1
|
||||
elif words[0] == 'ENCODING':
|
||||
ascii_code = int(words[1])
|
||||
elif words[0] == 'BITMAP':
|
||||
is_code = True
|
||||
index = 0
|
||||
|
||||
|
After Width: | Height: | Size: 145 B |
|
After Width: | Height: | Size: 281 B |
|
After Width: | Height: | Size: 299 B |
|
After Width: | Height: | Size: 290 B |
|
After Width: | Height: | Size: 304 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 312 B |
|
After Width: | Height: | Size: 319 B |
|
After Width: | Height: | Size: 290 B |
|
After Width: | Height: | Size: 303 B |
|
After Width: | Height: | Size: 301 B |
|
After Width: | Height: | Size: 289 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 290 B |
|
After Width: | Height: | Size: 287 B |
|
After Width: | Height: | Size: 289 B |
|
After Width: | Height: | Size: 299 B |
|
After Width: | Height: | Size: 302 B |
|
After Width: | Height: | Size: 300 B |
|
After Width: | Height: | Size: 312 B |
|
After Width: | Height: | Size: 313 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 317 B |
|
After Width: | Height: | Size: 312 B |
|
After Width: | Height: | Size: 308 B |
|
After Width: | Height: | Size: 300 B |
|
After Width: | Height: | Size: 315 B |
|
After Width: | Height: | Size: 289 B |
|
After Width: | Height: | Size: 292 B |
|
After Width: | Height: | Size: 290 B |
|
After Width: | Height: | Size: 290 B |
|
After Width: | Height: | Size: 289 B |
|
After Width: | Height: | Size: 310 B |
|
After Width: | Height: | Size: 323 B |
|
After Width: | Height: | Size: 313 B |
|
After Width: | Height: | Size: 302 B |
|
After Width: | Height: | Size: 320 B |
|
After Width: | Height: | Size: 308 B |
|
After Width: | Height: | Size: 302 B |
|
After Width: | Height: | Size: 305 B |
|
After Width: | Height: | Size: 327 B |
|
After Width: | Height: | Size: 304 B |
|
After Width: | Height: | Size: 292 B |
|
After Width: | Height: | Size: 304 B |
|
After Width: | Height: | Size: 320 B |
|
After Width: | Height: | Size: 298 B |
|
After Width: | Height: | Size: 317 B |
|
After Width: | Height: | Size: 315 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 309 B |
|
After Width: | Height: | Size: 322 B |
|
After Width: | Height: | Size: 303 B |
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 301 B |
|
After Width: | Height: | Size: 299 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 313 B |
|
After Width: | Height: | Size: 308 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 307 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 298 B |
|
After Width: | Height: | Size: 303 B |
|
After Width: | Height: | Size: 286 B |
|
After Width: | Height: | Size: 284 B |
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 307 B |
|
After Width: | Height: | Size: 307 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 313 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 305 B |
|
After Width: | Height: | Size: 292 B |
|
After Width: | Height: | Size: 293 B |
|
After Width: | Height: | Size: 311 B |
|
After Width: | Height: | Size: 292 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 308 B |
|
After Width: | Height: | Size: 302 B |
|
After Width: | Height: | Size: 315 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 303 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 304 B |
|
After Width: | Height: | Size: 295 B |
|
After Width: | Height: | Size: 300 B |
|
After Width: | Height: | Size: 304 B |
|
After Width: | Height: | Size: 302 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 296 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 134 B |
|
After Width: | Height: | Size: 297 B |
|
After Width: | Height: | Size: 294 B |
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 302 B |