This repository has been archived by the owner on Dec 8, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathgen_fonts.nim
77 lines (71 loc) · 1.99 KB
/
gen_fonts.nim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import os
import nico_font_tool
const fontsDir = "assets/fonts/"
const outputsDir = "examples/assets/fonts"
const outputsPaletteDir = joinPath(outputsDir, "palette")
const outputsRgbaDir = joinPath(outputsDir, "rgba")
removeDir(outputsDir)
createDir(outputsPaletteDir)
createDir(outputsRgbaDir)
proc convertFont(
fontFileName: string,
outputsName: string,
fontSize: uint = 0,
glyphOffsetX: int = 0,
glyphOffsetY: int = 0,
glyphAdjustWidth: int = 0,
glyphAdjustHeight: int = 0,
) =
let fontFilePath = joinPath(fontsDir, fontFileName)
let (sheetData, alphabet) = createSheet(
fontFilePath,
fontSize,
glyphOffsetX,
glyphOffsetY,
glyphAdjustWidth,
glyphAdjustHeight,
)
savePalettePng(sheetData, outputsPaletteDir, outputsName)
saveDatFile(alphabet, outputsPaletteDir, outputsName)
saveRgbaPng(sheetData, outputsRgbaDir, outputsName)
saveDatFile(alphabet, outputsRgbaDir, outputsName)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-8px-monospaced.otf",
outputsName = "fusion-pixel-8px-monospaced",
fontSize = 8,
)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-8px-proportional.otf",
outputsName = "fusion-pixel-8px-proportional",
fontSize = 8,
)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-10px-monospaced.otf",
outputsName = "fusion-pixel-10px-monospaced",
fontSize = 10,
)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-10px-proportional.otf",
outputsName = "fusion-pixel-10px-proportional",
fontSize = 10,
)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-12px-monospaced.otf",
outputsName = "fusion-pixel-12px-monospaced",
fontSize = 12,
)
convertFont(
fontFileName = "fusion-pixel/fusion-pixel-12px-proportional.otf",
outputsName = "fusion-pixel-12px-proportional",
fontSize = 12,
)
convertFont(
fontFileName = "unifont/unifont-15.0.01.ttf",
outputsName = "unifont",
fontSize = 16,
)
convertFont(
fontFileName = "roboto/Roboto-Regular.ttf",
outputsName = "roboto",
fontSize = 24,
)